Поделиться через


Функция SubscribeActivityCoordinatorPolicy (activitycoordinator.h)

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

Синтаксис

HRESULT SubscribeActivityCoordinatorPolicy(
  ACTIVITY_COORDINATOR_POLICY       policy,
  ACTIVITY_COORDINATOR_CALLBACK     callback,
  void                              *callbackContext,
  ACTIVITY_COORDINATOR_SUBSCRIPTION *subscription
);

Параметры

policy

Предоставляет дескриптор целевой политике.

callback

Предоставляет обратный вызов для выполнения всех уведомлений о координации из этой подписки.

callbackContext

Предоставляет контекст для передачи в подпрограмму обратного вызова.

subscription

Предоставляет указатель на дескриптор ACTIVITY_COORDINATOR_SUBSCRIPTION , который получает созданный дескриптор подписки.

Возвращаемое значение

Возвращает HRESULT.

Комментарии

Примечание Не выполняйте действия в этом обратном вызове, так как это заблокирует доставку будущих уведомлений политики для этой подписки. Этот обратный вызов следует использовать для координации начала и остановки действия в ответ на уведомления RUN/STOP от API.

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

Примечание Вызовы unsubscribeActivityCoordinatorPolicy из этого обратного вызова завершаются ошибкой. Отмена подписки должна выполняться вне обратного вызова.

Требования

Требование Значение
Заголовок activitycoordinator.h

См. также раздел

Отмена подпискиActivityCoordinatorPolicy

ACTIVITY_COORDINATOR_CALLBACK

ACTIVITY_COORDINATOR_NOTIFICATION