Udostępnij za pośrednictwem


PreAllocatedOverlapped.UnsafeCreate Metoda

Definicja

Ważne

Ten interfejs API nie jest zgodny ze specyfikacją CLS.

Inicjuje PreAllocatedOverlapped nowe wystąpienie klasy, określając delegata wywoływanego po zakończeniu każdej 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 dostarczony przez użytkownika, który odróżnia NativeOverlapped wystąpienie utworzone od 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

callback to null.

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

Uwagi

Nowe PreAllocatedOverlapped wystąpienie można przekazać do AllocateNativeOverlapped(PreAllocatedOverlapped)programu w celu utworzenia NativeOverlapped wystąpienia, 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 do kolejnych operacji natywnych. Element ExecutionContext nie jest przepływany do wywołania wywołania zwrotnego.

Uwaga

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

Dotyczy