Обзор API координатора действий

API координатора действий координирует выполнение отложенных задач, называемых действиями в системе Windows.

Действия могут отложить выполнение до времени, когда система находится в требуемом состоянии, при выполнении задачи не влияет на работу пользователя или производительность системы. Это позволяет обеспечить равномерное распределение приложений в системе в разных случаях, когда пользователь неактивен или система неактивна. API обеспечивает централизованную координацию этих решений, чтобы избежать сценариев, когда приложения ухудшают взаимодействие с пользователем, конкурируя за системные ресурсы.

Использование

Разработчики используют API, определяя политики, описывающие требуемое состояние системы, в течение которой они хотят выполнить свои действия. Подписавшись на эти политики, разработчики получают уведомления о том, когда начать или остановить свою деятельность на основе удовлетворения условий их политики. API координирует эти уведомления между подписками в системе, чтобы обеспечить централизованное определение того, что является подходящим временем для выполнения отложенной работы.

Использование API не препятствует запуску приложений по мере их соответствия. Он полагается на них, чтобы быть хорошими гражданами, выбирать соответствующие политики и принимать решения о выполнении в ответ на уведомления API. Кроме того, использование API требует запуска вызывающего процесса. Приложения не должны полагаться на API координатора действий для высокоприоритетной работы, которая должна выполняться независимо от системных условий.

Windows имеет несколько API, доступных разработчикам для отсрочки или планирования задач. Используйте следующее руководство, чтобы определить, какой API лучше всего подходит для вашего приложения.

API предполагаемое использование;
Координатор действий Используйте координатор действий для координации выполнения отложенных задач на основе требуемых системных условий.
Фоновая интеллектуальная служба передачи (BITS) BITS используется программистами и системными администраторами для скачивания файлов из файлов или отправки файлов на веб-серверы HTTP и S МБ общих папок. Она будет учитывать затраты на передачу, а также использование сети, чтобы работа на переднем плане пользователя не влияла как можно больше.
Планировщик заданий Планировщик задач позволяет автоматически выполнять стандартные задачи на выбранном компьютере. Используйте этот API для выполнения таких задач, как запуск приложения, отправка сообщения электронной почты или отображение поля сообщения. Задачи можно запланировать для выполнения в ответ на события или триггеры.

Политики, ресурсы и условия

Политики описывают условия многих системных ресурсов. Разработчики настраивают политики, связывая каждый ресурс с требуемым "условием", чтобы начать использовать этот ресурс. Условия описывают качественное состояние ресурса и могут оцениваться факторами.

Сочетание ресурсов и условий позволяет разработчикам описывать требуемое состояние системы, чтобы гарантировать, что выполнение рабочей нагрузки не негативно влияет на производительность пользователя или системы. Так как состояние системы всегда изменяется, подписка на эти политики предоставляет уведомления о том, когда начать или остановить работу на основе того, удовлетворена ли политика (открыта) или не удовлетворена (закрыта).

Шаблоны политик

Шаблоны политик — это способ настройки политик с предварительно определенными условиями ресурсов, предназначенными для удовлетворения потребностей большинства приложений. Шаблон политики требуется при создании политики и используется в качестве отправной точки для настройки политик, относящихся к потребностям разработчика. Пустой шаблон политики предоставляется разработчикам, желающим полностью контролировать свою политику.

API и терминология координатора действий

Выбор правильной политики координатора действий

Пример проекта координатора действий