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 関数は、WorkQueueType パラメーターの値MF_STANDARD_WORKQUEUEを使用して MFAllocateWorkQueueEx を呼び出すことと同じです。

この関数は、Windows Vista のプラットフォーム更新プログラムの補足情報がインストールされている場合、Windows Vista で使用できます。

要件

要件
サポートされている最小のクライアント Windows Vista 用 Windows 7、Windows Vista およびプラットフォーム更新プログラムの補足情報 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー mfapi.h
Library Mfplat.lib
[DLL] Mfplat.dll

こちらもご覧ください

MFPutWorkItem

MFPutWorkItemEx

メディア ファンデーション機能

作業キュー