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, die einen Delegaten angibt, der aufgerufen wird, wenn der asynchrone I/O-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 Objektarray, das den Eingabe- oder den Ausgabepuffer für den Vorgang darstellt. Jedes Objekt stellt einen Puffer dar, z. B. ein Array von Bytes. Kann null
sein.
Gibt zurück
Ein nicht verwalteter Zeiger auf eine NativeOverlapped-Struktur.
- Attribute
Ausnahmen
callback
ist null
.
Diese Methode wurde aufgerufen, nachdem das ThreadPoolBoundHandle-Objekt freigegeben wurde.
Hinweise
Der von dieser Methode zurückgegebene nicht verwaltete Zeiger kann in überlappenden I/O-Vorgängen an das Betriebssystem übergeben werden. Die NativeOverlapped Struktur wird im physischen Speicher behoben, bis FreeNativeOverlapped(NativeOverlapped*) sie aufgerufen wird.
Die in diesem Bereich angegebenen pinData
Puffer oder Puffer müssen mit denen identisch sein, die an die nicht verwaltete Betriebssystemfunktion übergeben werden, die die asynchrone E/A ausführt.
ExecutionContext wird nicht an den Aufruf des Rückrufs fließt.
Hinweis
Die angegebenen pinData
Puffer werden für die Dauer des I/O-Vorgangs angeheftet.