ThreadPoolBoundHandle.UnsafeAllocateNativeOverlapped Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Wichtig
Diese API ist nicht CLS-kompatibel.
Gibt einen nicht verwalteten Zeiger auf eine NativeOverlapped Struktur zurück, der einen Delegaten angibt, der aufgerufen wird, wenn der asynchrone E/A-Vorgang abgeschlossen ist, ein vom Benutzer bereitgestelltes Objekt, das Kontext bereitstellt, und verwaltete Objekte, die als Puffer dienen.
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>
Parameter
- callback
- IOCompletionCallback
Ein IOCompletionCallback Delegat, der die Rückrufmethode darstellt, die aufgerufen wird, wenn der asynchrone E/A-Vorgang abgeschlossen ist.
- state
- Object
Ein vom Benutzer bereitgestelltes Objekt, das dies NativeOverlapped von anderen NativeOverlapped Instanzen unterscheidet. Kann null sein.
- pinData
- Object
Ein Objekt oder ein Array von Objekten, die den Eingabe- oder Ausgabepuffer für den Vorgang darstellen. Jedes Objekt stellt einen Puffer dar, z. B. ein Bytearray. Kann null sein.
Gibt zurück
Ein nicht verwalteter Zeiger auf eine NativeOverlapped Struktur.
- Attribute
Ausnahmen
callback ist null.
Diese Methode wurde aufgerufen, nachdem die ThreadPoolBoundHandle Methode verworfen wurde.
Hinweise
Der von dieser Methode zurückgegebene nicht verwaltete Zeiger kann in überlappenden E/A-Vorgängen an das Betriebssystem übergeben werden. Die NativeOverlapped Struktur wird im physischen Speicher festgelegt, bis FreeNativeOverlapped(NativeOverlapped*) sie aufgerufen wird.
Der in pinData diesem Parameter angegebene Puffer muss mit den Puffern identisch sein, die an die nicht verwaltete Betriebssystemfunktion übergeben werden, die die asynchrone E/A-Funktion ausführt.
ExecutionContext wird nicht an den Aufruf des Rückrufs fließen.
Note
Die angegebenen pinData Puffer werden für die Dauer des E/A-Vorgangs angeheftet.