Comparteix a través de


ThreadPoolBoundHandle.UnsafeAllocateNativeOverlapped Método

Definición

Importante

Esta API no es conforme a CLS.

Devuelve un puntero no administrado a una NativeOverlapped estructura, especificando un delegado que se invoca cuando se completa la operación de E/S asincrónica, un objeto proporcionado por el usuario que proporciona contexto y objetos administrados que actúan como búferes.

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>

Parámetros

callback
IOCompletionCallback

Delegado IOCompletionCallback que representa el método de devolución de llamada invocado al completarse la operación de E/S asincrónica.

state
Object

Objeto proporcionado por el usuario que distingue esto NativeOverlapped de otras NativeOverlapped instancias. Puede ser null.

pinData
Object

Objeto o matriz de objetos que representa el búfer de entrada o salida para la operación. Cada objeto representa un búfer, por ejemplo una matriz de bytes. Puede ser null.

Devoluciones

Puntero no administrado a una estructura NativeOverlapped.

Atributos

Excepciones

callback es null.

Se llamó a este método después de eliminar ThreadPoolBoundHandle.

Comentarios

El puntero no administrado devuelto por este método se puede pasar al sistema operativo en operaciones de E/S superpuestas. La NativeOverlapped estructura se fija en memoria física hasta FreeNativeOverlapped(NativeOverlapped*) que se llama a .

El búfer o los búferes especificados en pinData deben ser los mismos que los pasados a la función del sistema operativo no administrado que realiza la E/S asincrónica.

ExecutionContext no fluye a la invocación de la devolución de llamada.

Nota:

Los búferes especificados en pinData se anclan durante la operación de E/S.

Se aplica a