Język

PreAllocatedOverlapped.UnsafeCreate Metoda

Definicja

Ważne

Ten interfejs API nie jest zgodny ze specyfikacją CLS.

Inicjuje nowe wystąpienie PreAllocatedOverlapped klasy, określając delegata wywoływanego po zakończeniu każdej operacji asynchronicznej operacji we/wy, obiektu dostarczonego przez użytkownika zapewniającego kontekst i zarządzanych obiektów, które służą jako bufory.

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

Parametry

callback
IOCompletionCallback

Delegat IOCompletionCallback reprezentujący metodę wywołania zwrotnego wywoływaną po zakończeniu każdej asynchronicznej operacji we/wy.

state
Object

Obiekt udostępniony przez użytkownika, który odróżnia NativeOverlapped wystąpienie utworzone z tego obiektu od innych NativeOverlapped wystąpień. Może to być null.

pinData
Object

Obiekt lub tablica obiektów reprezentujących bufor wejściowy lub wyjściowy dla operacji. Każdy obiekt reprezentuje bufor, na przykład tablicę bajtów. Może to być null.

Zwraca

Nowe PreAllocatedOverlapped wystąpienie.

Atrybuty

Wyjątki

Parametr callback ma wartość null.

Ta metoda została wywołana po usunięciu ThreadPoolBoundHandle .

Uwagi

Nowe PreAllocatedOverlapped wystąpienie można przekazać do AllocateNativeOverlapped(PreAllocatedOverlapped)programu , aby utworzyć NativeOverlapped wystąpienie, które można przekazać do systemu operacyjnego w nakładających się operacjach we/wy. Pojedyncze PreAllocatedOverlapped wystąpienie może być używane tylko dla pojedynczej natywnej operacji we/wy w danym momencie. Jednak stan przechowywany w wystąpieniu PreAllocatedOverlapped może być ponownie używany dla kolejnych operacji natywnych. Obiekt ExecutionContext nie jest przepływany do wywołania wywołania zwrotnego.

Note

Bufory określone w parametrze pinData są przypięte do momentu Dispose() wywołania.

Dotyczy