PreAllocatedOverlapped.UnsafeCreate メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
重要
この API は CLS 準拠ではありません。
各非同期 I/O 操作が完了したときに呼び出されるデリゲート、コンテキストを提供するユーザー指定のオブジェクト、およびバッファーとして機能するマネージド オブジェクトを指定して、 PreAllocatedOverlapped クラスの新しいインスタンスを初期化します。
public:
static System::Threading::PreAllocatedOverlapped ^ UnsafeCreate(System::Threading::IOCompletionCallback ^ callback, System::Object ^ state, System::Object ^ pinData);
[System.CLSCompliant(false)]
public static System.Threading.PreAllocatedOverlapped UnsafeCreate(System.Threading.IOCompletionCallback callback, object? state, object? pinData);
[<System.CLSCompliant(false)>]
static member UnsafeCreate : System.Threading.IOCompletionCallback * obj * obj -> System.Threading.PreAllocatedOverlapped
Public Shared Function UnsafeCreate (callback As IOCompletionCallback, state As Object, pinData As Object) As PreAllocatedOverlapped
パラメーター
- callback
- IOCompletionCallback
各非同期 I/O 操作が完了したときに呼び出されるコールバック メソッドを表す IOCompletionCallback デリゲート。
- state
- Object
このオブジェクトから生成されたインスタンス NativeOverlapped 他の NativeOverlapped インスタンスとを区別する、ユーザー指定のオブジェクト。
null の可能性があります。
- pinData
- Object
操作の入力バッファーまたは出力バッファーを表すオブジェクトのオブジェクトまたは配列。 各オブジェクトは、バイト配列などのバッファーを表します。
null の可能性があります。
返品
新しい PreAllocatedOverlapped インスタンス。
- 属性
例外
callback は nullです。
このメソッドは、 ThreadPoolBoundHandle が破棄された後に呼び出されました。
注釈
新しい PreAllocatedOverlapped インスタンスを AllocateNativeOverlapped(PreAllocatedOverlapped)に渡して、重複した I/O 操作でオペレーティング システムに渡すことができる NativeOverlapped インスタンスを生成できます。 1 つの PreAllocatedOverlapped インスタンスは、一度に 1 つのネイティブ I/O 操作にのみ使用できます。 ただし、 PreAllocatedOverlapped インスタンスに格納されている状態は、後続のネイティブ操作に再利用できます。 ExecutionContext はコールバックの呼び出しにフローされません。
Note
pinDataで指定されたバッファーは、Dispose()が呼び出されるまでピン留めされます。