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


Функция MFAllocateWorkQueueEx (mfapi.h)

Создает новую рабочую очередь. Эта функция расширяет возможности функции MFAllocateWorkQueue , позволяя создать рабочую очередь с циклом сообщений.

Синтаксис

HRESULT MFAllocateWorkQueueEx(
  [in]  MFASYNC_WORKQUEUE_TYPE WorkQueueType,
  [out] DWORD                  *pdwWorkQueue
);

Параметры

[in] WorkQueueType

Член перечисления MFASYNC_WORKQUEUE_TYPE , указывающий тип создаваемой рабочей очереди.

Значение Значение
MF_MULTITHREADED_WORKQUEUE
Создание многопоточной рабочей очереди. Как правило, приложения не должны создавать частные многопоточные очереди. Вместо этого используйте многопоточные очереди платформы. Дополнительные сведения см. в разделе Улучшения рабочих очередей и потоков.
MF_STANDARD_WORKQUEUE
Создание рабочей очереди без цикла сообщений. Использование этого флага эквивалентно вызову MFAllocateWorkQueue.
MF_WINDOW_WORKQUEUE
Создайте рабочую очередь с циклом сообщений. Поток, который отправляет рабочие элементы для этой очереди, также вызывает PeekMessage и DispatchMessage. Используйте этот параметр, если обратный вызов выполняет какие-либо действия, требующие цикла сообщений.

[out] pdwWorkQueue

Получает идентификатор созданной рабочей очереди.

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

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

Код возврата Описание
S_OK
Функция выполнена успешно.
E_FAIL
Приложение превысило максимальное число рабочих очередей.
E_INVALIDARG
Недопустимый аргумент.
MF_E_SHUTDOWN
Приложение не вызывало MFStartup, или приложение уже вызывало MFShutdown.

Комментарии

Завершив работу с рабочей очередью, вызовите MFUnlockWorkQueue.

Функция MFAllocateWorkQueue эквивалентна вызову MFAllocateWorkQueueEx со значением MF_STANDARD_WORKQUEUE для параметра WorkQueueType .

Эта функция доступна в Windows Vista, если установлено дополнение к обновлению платформы для Windows Vista.

Требования

Требование Значение
Минимальная версия клиента Дополнение к Windows 7, Windows Vista и обновлению платформы для Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 R2 [только классические приложения]
Целевая платформа Windows
Header mfapi.h
Библиотека Mfplat.lib
DLL Mfplat.dll

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

MFPutWorkItem

MFPutWorkItemEx

Функции Media Foundation

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