CMsgThread.WaitForThreadExit メソッド
[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayer、IMFMediaEngine、および Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayer、IMFMediaEngine、Audio/Video Capture を使用することを強くお勧めします。 Microsoft は、従来の API を使用する既存のコードを、可能であれば新しい API を使用するように書き直すよう提案しています。]
スレッドが終了するまでブロックします。
構文
BOOL WaitForThreadExit(
LPDWORD lpdwExitCode
);
パラメーター
-
lpdwExitCode
-
スレッドによって返される終了コードへのポインター。
戻り値
TRUE または FALSE を返します。この意味は、オーバーライドされた CMsgThread::ThreadMessageProc メンバー関数と呼び出し元のメンバー関数を提供するクラスによって決定されます。
解説
派生クラスの破棄を完了する前に、ワーカー スレッドが完全に終了していることを確認します。そうしないと、プロセスのアドレス空間からダイナミック リンク ライブラリ (DLL) がアンロードされた後も、スレッドが実行される可能性があります。 終了する唯一の命令が単一の戻り命令である場合でも、例外が発生します。 スレッドが終了したことを確認する唯一の信頼できる方法は、(CMsgThread::P utThreadMsg メンバー関数に送信されたプライベートにネゴシエートされた CMsg オブジェクトを使用して) 終了するようにスレッドに通知してから、このメンバー関数を呼び出す方法です。 これは、派生クラスのデストラクターで行う必要があります。
要件
要件 | 値 |
---|---|
ヘッダー |
|
ライブラリ |
|