IAsyncResult.AsyncWaitHandle プロパティ
アセンブリ: mscorlib (mscorlib.dll 内)

非同期操作が完了するまで待機するために使用する WaitHandle。

この戻り値を使用すると、クライアントは非同期操作が完了するまで IsCompleted をポーリングするのではなく、非同期操作が完了するまで待機できます。この戻り値は、WaitOne、WaitAny、WaitAll のいずれかの演算を実行する場合に使用します。
共通言語ランタイムは、Win32 同期プリミティブを反映した待機可能オブジェクトとして、ManualResetEvent、AutoResetEvent、Mutex などを提供します。
実装時の注意 IAsyncResult を実装するオブジェクトは、AsyncWaitHandle プロパティが読み取られるまで WaitHandle を作成する必要はありません。いずれの方法で割り当てるかは、IAsyncResult を実装するオブジェクトが選択します。しかし、実装するオブジェクトが AsyncWaitHandle を作成した場合は、必要なときに待機を終了させる WaitHandle のシグナル通知は、そのオブジェクトが行います。たとえば、非同期に呼び出されたメソッドが返ると、呼び出し元に代わって System.Runtime.Remoting.Messaging.AsyncResult が待機を終了させます。一度作成された AsyncWaitHandle は、非同期操作を終了させるメソッドをユーザーが呼び出すまで、有効な状態に保つ必要があります。該当するメソッドが呼び出された時点で、AsyncWaitHandle の後のオブジェクトは破棄できます。 呼び出し時の注意 (ポーリングではなく) 操作の完了を待機するクライアントは、待機対象の同期オブジェクトを取得するときにこのプロパティを使用します。
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- IAsyncResult.AsyncWaitHandle プロパティのページへのリンク