ThreadPoolBoundHandle.AllocateNativeOverlapped Método

Definición

Devuelve un puntero no administrado a una estructura NativeOverlapped.

Sobrecargas

AllocateNativeOverlapped(PreAllocatedOverlapped)

Devuelve un puntero no administrado a una estructura NativeOverlapped con el estado de devolución de llamada y los búferes asociados con el objeto PreAllocatedOverlapped especificado.

AllocateNativeOverlapped(IOCompletionCallback, Object, Object)

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

AllocateNativeOverlapped(PreAllocatedOverlapped)

Importante

Esta API no es conforme a CLS.

Devuelve un puntero no administrado a una estructura NativeOverlapped con el estado de devolución de llamada y los búferes asociados con el objeto PreAllocatedOverlapped especificado.

C#
[System.CLSCompliant(false)]
public System.Threading.NativeOverlapped* AllocateNativeOverlapped (System.Threading.PreAllocatedOverlapped preAllocated);
C#
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public System.Threading.NativeOverlapped* AllocateNativeOverlapped (System.Threading.PreAllocatedOverlapped preAllocated);

Parámetros

preAllocated
PreAllocatedOverlapped

Objeto desde el que se va a crear el puntero NativeOverlapped.

Devoluciones

NativeOverlapped*

Puntero no administrado a una estructura NativeOverlapped.

Atributos

Excepciones

preAllocated es null.

preAllocated está actualmente en uso para otra operación de E/S.

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

o bien Se llamó a este método después de eliminar preAllocated.

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 que se llama al FreeNativeOverlapped método .

Consulte también

Se aplica a

.NET 7 y otras versiones
Producto Versiones
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7
.NET Framework 4.7.1, 4.7.2, 4.8
.NET Standard 2.0, 2.1
UWP 10.0

AllocateNativeOverlapped(IOCompletionCallback, Object, Object)

Importante

Esta API no es conforme a CLS.

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

C#
[System.CLSCompliant(false)]
public System.Threading.NativeOverlapped* AllocateNativeOverlapped (System.Threading.IOCompletionCallback callback, object state, object pinData);
C#
[System.CLSCompliant(false)]
public System.Threading.NativeOverlapped* AllocateNativeOverlapped (System.Threading.IOCompletionCallback callback, object? state, object? pinData);
C#
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public System.Threading.NativeOverlapped* AllocateNativeOverlapped (System.Threading.IOCompletionCallback callback, object state, object pinData);

Parámetros

callback
IOCompletionCallback

Delegado que representa el método de devolución de llamada que se invoca cuando se completa la operación de E/S asincrónica.

state
Object

Objeto proporcionado por el usuario que distingue esta instancia de NativeOverlapped de otras instancias de NativeOverlapped.

pinData
Object

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

Devoluciones

NativeOverlapped*

Puntero no administrado a una estructura NativeOverlapped.

Atributos

Excepciones

callback es null.

Se llamó a este método después de haber eliminado el objeto 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 ThreadPoolBoundHandle.FreeNativeOverlapped que se llama a .

Nota

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

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

Se aplica a

.NET 7 y otras versiones
Producto Versiones
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7
.NET Framework 4.7.1, 4.7.2, 4.8
.NET Standard 2.0, 2.1
UWP 10.0