Метод IMFAsyncCallback::GetParameters (mfobjects.h)

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

Синтаксис

HRESULT GetParameters(
  [out] DWORD *pdwFlags,
  [out] DWORD *pdwQueue
);

Параметры

[out] pdwFlags

Получает флаг, указывающий поведение метода IMFAsyncCallback::Invoke объекта обратного вызова. Определены следующие значения. Значение по умолчанию равно нулю.

Значение Значение
Нуль
Обратный вызов не занимает много времени, но не имеет конкретных ограничений на то, что система вызывает. Обратный вызов обычно занимает менее 30 миллисекундах.
MFASYNC_FAST_IO_PROCESSING_CALLBACK
Обратный вызов выполняет очень минимальную обработку. Для этого требуется менее 1 миллисекунды.

Обратный вызов должен быть вызван из одной из следующих рабочих очередей:

  • MFASYNC_CALLBACK_QUEUE_IO
  • MFASYNC_CALLBACK_QUEUE_TIMER
MFASYNC_SIGNAL_CALLBACK
Подразумевает MFASYNC_FAST_IO_PROCESSING_CALLBACK с дополнительным ограничением на то, что обратный вызов не выполняет обработку (менее 50 микросекунд), и единственным системным вызовом является SetEvent.

Обратный вызов должен быть вызван из одной из следующих рабочих очередей:

  • MFASYNC_CALLBACK_QUEUE_IO
  • MFASYNC_CALLBACK_QUEUE_TIMER
MFASYNC_BLOCKING_CALLBACK
Блокировка обратного вызова.
MFASYNC_REPLY_CALLBACK
Ответить на обратный вызов.

[out] pdwQueue

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

Это значение может указывать одну из стандартных рабочих очередей Media Foundation или рабочую очередь, созданную приложением. Список стандартных рабочих очередей Media Foundation см. в разделе Идентификаторы рабочих очередей. Чтобы создать новую рабочую очередь, вызовите MFAllocateWorkQueue. Значение по умолчанию — MFASYNC_CALLBACK_QUEUE_STANDARD.

Если рабочая очередь несовместима со значением, возвращенным в pdwFlags, платформа Media Foundation возвращает MF_E_INVALID_WORKQUEUE при попытке отправить обратный вызов. (См. раздел MFPutWorkItem.)

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

Метод возвращает HRESULT. Допустимые значения включают, но не ограничиваются, значения, приведенные в следующей таблице.

Код возврата Описание
S_OK
Метод выполнен успешно.
E_NOTIMPL
Не реализован. Предположим, что поведение по умолчанию.

Комментарии

Метод GetParameters возвращает сведения о обратном вызове, чтобы поток диспетчеризации смог оптимизировать процесс, используемый для вызова обратного вызова.

Если метод возвращает значение, отличное от нуля в параметре pdwFlags , метод Invoke должен соответствовать описанным здесь требованиям. В противном случае обратный вызов может отложить конвейер.

Если вы хотите использовать значения по умолчанию для обоих параметров, верните E_NOTIMPL. Значения по умолчанию задаются в описаниях параметров на этой странице.

Этот интерфейс доступен на следующих платформах, если установлены распространяемые компоненты пакета SDK формата 11 для Windows Media:

  • Windows XP с пакетом обновления 2 (SP2) и более поздних версий.
  • Windows XP Media Center Edition 2005 с установленным KB900325 (Windows XP Media Center Edition 2005) и KB925766 (накопительный пакет обновления для Windows XP Media Center Edition за октябрь 2006 г.).

Требования

Требование Значение
Минимальная версия клиента Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header mfobjects.h (включая Mfidl.h)
Библиотека Mfuuid.lib

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

Асинхронные методы обратного вызова

IMFAsyncCallback

Рабочие очереди