MFLockPlatform 関数 (mfapi.h)
MFShutdown 関数をブロックします。
構文
HRESULT MFLockPlatform();
戻り値
関数は HRESULT を返します。 有効な値を次の表に示しますが、これ以外にもあります。
リターン コード | 説明 |
---|---|
|
関数が正常に実行されました。 |
解説
この関数は、 MFShutdown が呼び出されたときに作業キュー スレッドがシャットダウンされないようにします。 この関数を使用して、プラットフォームがシャットダウンする前に非同期操作が正常に完了することを確認します。
この関数は、Media Foundation プラットフォームでロックを保持します。 プラットフォームのロックを解除するには、 MFUnlockPlatform を呼び出します。 アプリケーションでは、 MFLockPlatform を呼び出すたびに 、MFUnlockPlatform を 1 回呼び出す必要があります。
MFShutdown 関数は、プラットフォームのロックが解除されるまで、または固定待機時間が経過するまでブロックします。 (待機時間は数秒です)。メモリ リークを回避するには、待機時間が終了する前に、アプリケーションでプラットフォームのロックを解除する必要があります。 たとえば、完了を待機していて、プラットフォームでロックを保持している非同期操作を取り消します。
IMFAsyncResult インターフェイスの既定の実装では、結果オブジェクトの作成時に Media Foundation プラットフォームが自動的にロックされます。 インターフェイスを解放すると、プラットフォームのロックが解除されます。 そのため、ほとんどの場合、アプリケーションはプラットフォームを直接ロックする必要はありません。 詳細については、「 作業キュー」を参照してください。
この機能は、Windows Media Format 11 SDK 再頒布可能コンポーネントがインストールされている場合、次のプラットフォームで使用できます。
- Windows XP Service Pack 2 (SP2) 以降。
- Windows XP Media Center Edition 2005 KB900325 (Windows XP Media Center Edition 2005) とKB925766 (2006 年 10 月 Windows XP Media Center Edition の更新プログラムのロールアップ) がインストールされています。
要件
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ | UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリ | UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | mfapi.h |
Library | Mfplat.lib |
[DLL] | Mfplat.dll |