ThreadPoolBoundHandle.UnsafeAllocateNativeOverlapped メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
重要
この API は CLS 準拠ではありません。
非同期 I/O 操作の完了時に呼び出されるデリゲート、コンテキストを提供するユーザー指定のオブジェクト、およびバッファーとして機能するマネージド オブジェクトを指定して、 NativeOverlapped 構造体へのアンマネージ ポインターを返します。
public:
System::Threading::NativeOverlapped* UnsafeAllocateNativeOverlapped(System::Threading::IOCompletionCallback ^ callback, System::Object ^ state, System::Object ^ pinData);
[System.CLSCompliant(false)]
public System.Threading.NativeOverlapped* UnsafeAllocateNativeOverlapped(System.Threading.IOCompletionCallback callback, object? state, object? pinData);
[<System.CLSCompliant(false)>]
member this.UnsafeAllocateNativeOverlapped : System.Threading.IOCompletionCallback * obj * obj -> nativeptr<System.Threading.NativeOverlapped>
パラメーター
- callback
- IOCompletionCallback
非同期 I/O 操作の完了時に呼び出されるコールバック メソッドを表す IOCompletionCallback デリゲート。
- state
- Object
この NativeOverlapped を他の NativeOverlapped インスタンスと区別するユーザー指定のオブジェクト。
null の可能性があります。
- pinData
- Object
操作の入力バッファーまたは出力バッファーを表すオブジェクトのオブジェクトまたは配列。 各オブジェクトは、バイト配列などのバッファーを表します。
null の可能性があります。
返品
NativeOverlapped構造体へのアンマネージ ポインター。
- 属性
例外
callback は nullです。
このメソッドは、 ThreadPoolBoundHandle が破棄された後に呼び出されました。
注釈
このメソッドによって返されるアンマネージ ポインターは、重複した I/O 操作でオペレーティング システムに渡すことができます。 NativeOverlapped構造体は、FreeNativeOverlapped(NativeOverlapped*)が呼び出されるまで物理メモリ内で固定されます。
pinDataで指定するバッファーは、非同期 I/O を実行するアンマネージド オペレーティング システム関数に渡されるものと同じである必要があります。
ExecutionContext はコールバックの呼び出しにフローされません。
Note
pinDataで指定されたバッファーは、I/O 操作の間ピン留めされます。