ThreadPoolBoundHandle.AllocateNativeOverlapped Metodo

Definizione

Restituisce un puntatore non gestito a una struttura NativeOverlapped.

Overload

AllocateNativeOverlapped(PreAllocatedOverlapped)

Restituisce un puntatore non gestito a una struttura NativeOverlapped mediante lo stato del callback e i buffer associati all'oggetto PreAllocatedOverlapped specificato.

AllocateNativeOverlapped(IOCompletionCallback, Object, Object)

Restituisce un puntatore non gestito a una struttura NativeOverlapped, specificando un delegato che viene richiamato quando l'operazione di I/O asincrona è completata, un oggetto specificato dall'utente che definisce il contesto e gli oggetti gestiti usati come buffer.

AllocateNativeOverlapped(PreAllocatedOverlapped)

Importante

Questa API non è conforme a CLS.

Restituisce un puntatore non gestito a una struttura NativeOverlapped mediante lo stato del callback e i buffer associati all'oggetto PreAllocatedOverlapped specificato.

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>

Parametri

preAllocated
PreAllocatedOverlapped

Oggetto dal quale creare il puntatore NativeOverlapped.

Restituisce

NativeOverlapped*

Puntatore non gestito a una struttura NativeOverlapped.

Attributi

Eccezioni

preAllocated è null.

preAllocated è attualmente in uso per un'altra operazione di I/O.

Questo metodo è stato chiamato dopo l'eliminazione di ThreadPoolBoundHandle.

-oppure- Questo metodo è stato chiamato dopo l'eliminazione di preAllocated.

Commenti

Il puntatore non gestito restituito da questo metodo può essere passato al sistema operativo in operazioni di I/O sovrapposte. La NativeOverlapped struttura è fissa nella memoria fisica fino a quando non viene chiamato il FreeNativeOverlapped metodo .

Vedi anche

Si applica a

AllocateNativeOverlapped(IOCompletionCallback, Object, Object)

Importante

Questa API non è conforme a CLS.

Restituisce un puntatore non gestito a una struttura NativeOverlapped, specificando un delegato che viene richiamato quando l'operazione di I/O asincrona è completata, un oggetto specificato dall'utente che definisce il contesto e gli oggetti gestiti usati come buffer.

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>

Parametri

callback
IOCompletionCallback

Un delegato che rappresenta il metodo di callback da richiamare al completamento dell'operazione di I/O asincrona.

state
Object

Un oggetto specificato dall'utente che distingue l'istanza NativeOverlapped da altre istanze NativeOverlapped.

pinData
Object

Un oggetto o una matrice di oggetti che rappresenta il buffer di input o output per l'operazione o null. Ogni oggetto rappresenta un buffer, ad esempio una matrice di byte.

Restituisce

NativeOverlapped*

Puntatore non gestito a una struttura NativeOverlapped.

Attributi

Eccezioni

callback è null.

Questo metodo è stato chiamato dopo l'eliminazione dell'oggetto ThreadPoolBoundHandle.

Commenti

Il puntatore non gestito restituito da questo metodo può essere passato al sistema operativo in operazioni di I/O sovrapposte. La NativeOverlapped struttura è fissa nella memoria fisica fino a quando non ThreadPoolBoundHandle.FreeNativeOverlapped viene chiamata.

Nota

I buffer specificati in pinData vengono aggiunti per la durata dell'operazione di I/O.

Il buffer o i buffer specificati in pinData devono essere uguali a quelli passati alla funzione del sistema operativo non gestito che esegue l'I/O asincrona.

Si applica a