PreAllocatedOverlapped(IOCompletionCallback, Object, Object) 建構函式

定義

重要

此 API 不符合 CLS 規範。

初始化 PreAllocatedOverlapped 類別的新執行個體,並指定當每個非同步 I/O 作業完成時叫用的委派、提供內容的使用者提供物件,以及作為緩衝區的 Managed 物件。

public:
 PreAllocatedOverlapped(System::Threading::IOCompletionCallback ^ callback, System::Object ^ state, System::Object ^ pinData);
[System.CLSCompliant(false)]
public PreAllocatedOverlapped (System.Threading.IOCompletionCallback callback, object state, object pinData);
[System.CLSCompliant(false)]
public PreAllocatedOverlapped (System.Threading.IOCompletionCallback callback, object? state, object? pinData);
[<System.CLSCompliant(false)>]
new System.Threading.PreAllocatedOverlapped : System.Threading.IOCompletionCallback * obj * obj -> System.Threading.PreAllocatedOverlapped
Public Sub New (callback As IOCompletionCallback, state As Object, pinData As Object)

參數

callback
IOCompletionCallback

委派,表示當每個非同步 I/O 作業完成時叫用的回呼方法。

state
Object

使用者提供的物件,可區別此物件與其他 NativeOverlapped 執行個體產生的 NativeOverlapped 執行個體。 其值可以是 null

pinData
Object

物件或物件陣列,代表作業的輸入或輸出緩衝區。 每個物件代表一個緩衝區,例如位元組陣列。 其值可以是 null

屬性

例外狀況

callbacknull

處置 ThreadPoolBoundHandle 後才呼叫這個方法。

備註

新的 PreAllocatedOverlapped 實例可以傳遞至 AllocateNativeOverlapped 方法,以產生 NativeOverlapped 可在重迭 I/O 作業中傳遞至作業系統的實例。 單 PreAllocatedOverlapped 一實例一次只能用於單一原生 I/O 作業。 不過,儲存在 實例中的 PreAllocatedOverlapped 狀態可以重複使用以供後續的原生作業使用。

注意

中指定的 pinData 緩衝區會固定到呼叫 方法為止 Dispose

適用於