Freigeben über


ThreadPoolBoundHandle.AllocateNativeOverlapped Methode

Definition

Gibt einen nicht verwalteten Zeiger auf eine NativeOverlapped-Struktur zurück.

Überlädt

AllocateNativeOverlapped(PreAllocatedOverlapped)

Gibt einen nicht verwalteten Zeiger auf eine NativeOverlapped-Struktur zurück, die den Rückrufzustand und die Puffer verwendet, die mit dem angegebenen PreAllocatedOverlapped-Objekt verknüpft sind.

AllocateNativeOverlapped(IOCompletionCallback, Object, Object)

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 sowie ein vom Benutzer bereitgestelltes Objekt, das Kontext gibt, und verwaltete Objekte, die als Puffer fungieren.

AllocateNativeOverlapped(PreAllocatedOverlapped)

Wichtig

Diese API ist nicht CLS-kompatibel.

Gibt einen nicht verwalteten Zeiger auf eine NativeOverlapped-Struktur zurück, die den Rückrufzustand und die Puffer verwendet, die mit dem angegebenen PreAllocatedOverlapped-Objekt verknüpft sind.

public:
 System::Threading::NativeOverlapped* AllocateNativeOverlapped(System::Threading::PreAllocatedOverlapped ^ preAllocated);
[System.CLSCompliant(false)]
public System.Threading.NativeOverlapped* AllocateNativeOverlapped (System.Threading.PreAllocatedOverlapped preAllocated);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public System.Threading.NativeOverlapped* AllocateNativeOverlapped (System.Threading.PreAllocatedOverlapped preAllocated);
[<System.CLSCompliant(false)>]
member this.AllocateNativeOverlapped : System.Threading.PreAllocatedOverlapped -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
member this.AllocateNativeOverlapped : System.Threading.PreAllocatedOverlapped -> nativeptr<System.Threading.NativeOverlapped>

Parameter

preAllocated
PreAllocatedOverlapped

Ein Objekt, aus dem der NativeOverlapped-Zeiger erstellt werden kann.

Gibt zurück

NativeOverlapped*

Ein nicht verwalteter Zeiger auf eine NativeOverlapped-Struktur.

Attribute

Ausnahmen

preAllocated ist null.

preAllocated wird aktuell für andere E/A-Vorgänge verwendet.

Diese Methode wurde aufgerufen, nachdem das ThreadPoolBoundHandle-Objekt freigegeben wurde.

- oder - Diese Methode wurde aufgerufen, nachdem das preAllocated-Objekt verfügbar gemacht 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 Arbeitsspeicher behoben, bis die FreeNativeOverlapped Methode aufgerufen wird.

Siehe auch

Gilt für

AllocateNativeOverlapped(IOCompletionCallback, Object, Object)

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 sowie ein vom Benutzer bereitgestelltes Objekt, das Kontext gibt, und verwaltete Objekte, die als Puffer fungieren.

public:
 System::Threading::NativeOverlapped* AllocateNativeOverlapped(System::Threading::IOCompletionCallback ^ callback, System::Object ^ state, System::Object ^ pinData);
[System.CLSCompliant(false)]
public System.Threading.NativeOverlapped* AllocateNativeOverlapped (System.Threading.IOCompletionCallback callback, object state, object pinData);
[System.CLSCompliant(false)]
public System.Threading.NativeOverlapped* AllocateNativeOverlapped (System.Threading.IOCompletionCallback callback, object? state, object? pinData);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public System.Threading.NativeOverlapped* AllocateNativeOverlapped (System.Threading.IOCompletionCallback callback, object state, object pinData);
[<System.CLSCompliant(false)>]
member this.AllocateNativeOverlapped : System.Threading.IOCompletionCallback * obj * obj -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
member this.AllocateNativeOverlapped : System.Threading.IOCompletionCallback * obj * obj -> nativeptr<System.Threading.NativeOverlapped>

Parameter

callback
IOCompletionCallback

Ein 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 diese NativeOverlapped-Instanz von anderen NativeOverlapped-Instanzen unterscheidet.

pinData
Object

Ein Objekt oder Array von Objekten, das den Eingabe- oder Ausgabepuffer für den Vorgang darstellt, oder null. Jedes Objekt stellt einen Puffer dar, wie z.B. ein Array von Bytes.

Gibt zurück

NativeOverlapped*

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 ThreadPoolBoundHandle.FreeNativeOverlapped sie aufgerufen wird.

Hinweis

Die angegebenen pinData Puffer werden für die Dauer des I/O-Vorgangs angeheftet.

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.

Gilt für