次の方法で共有


IHostIoCompletionManager::InitializeHostOverlapped メソッド

更新 : 2007 年 11 月

非同期 I/O 要求で使用する Win32 OVERLAPPED 構造体に追加するカスタム データをホストが初期化できるようにします。

HRESULT InitializeHostOverlapped (
    [in] void* pvOverlapped
);

パラメータ

  • pvOverlapped
    [入力] I/O 要求に含める Win32 OVERLAPPED 構造体へのポインタ。

戻り値

HRESULT

説明

S_OK

InitializeHostOverlapped が正常に終了しました。

HOST_E_CLRNOTAVAILABLE

共通言語ランタイム (CLR: Common Language Runtime) がプロセスに読み込まれていません。または CLR がマネージ コードを実行できない状態か、呼び出しを正常に処理できない状態にあります。

HOST_E_TIMEOUT

呼び出しがタイムアウトしました。

HOST_E_NOT_OWNER

呼び出し元がロックを所有していません。

HOST_E_ABANDONED

ブロックされたスレッドまたはファイバが待機しているイベントがキャンセルされました。

E_FAIL

未知の重大エラーが発生しました。メソッドから E_FAIL が返された場合、そのプロセス内では CLR を使用できなくなります。ホスト メソッドへの後続の呼び出しは、HOST_E_CLRNOTAVAILABLE を返します。

E_OUTOFMEMORY

メモリ不足のため、要求されたリソースを割り当てられませんでした。

解説

Windows プラットフォーム関数は OVERLAPPED 構造体を使用して、非同期 I/O 要求の状態を格納します。CLR は InitializeHostOverlapped メソッドを呼び出して、ホストがカスタム データを OVERLAPPED インスタンスに追加できるようにします。

ms164498.alert_caution(ja-jp,VS.90).gif重要 :

カスタム データ ブロックの先頭位置に移動するには、ホストがオフセットを OVERLAPPED 構造体のサイズに設定する必要があります (sizeof(OVERLAPPED))。

E_OUTOFMEMORY の戻り値は、ホストがカスタム データの初期化に失敗したことを示します。この場合、CLR はエラーを報告し、呼び出しが失敗します。

必要条件

プラットフォーム : 「.NET Framework システム要件」を参照

ヘッダー : MSCorEE.idl

ライブラリ : MSCorEE.dll にリソースとして格納されていること

.NET Framework のバージョン : 3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0

参照

参照

ICLRIoCompletionManager

IHostIoCompletionManager::GetHostOverlappedSize メソッド

IHostIoCompletionManager