Compartir vía


Overlapped.Pack Método

Definición

Empaqueta la instancia actual en una estructura NativeOverlapped.

Sobrecargas

Pack(IOCompletionCallback)
Obsoletos.
Obsoletos.
Obsoletos.

Empaqueta la instancia actual en una estructura NativeOverlapped, especificando el delegado que se va a invocar cuando finalice la operación de E/S asincrónica.

Pack(IOCompletionCallback, Object)

Empaqueta la instancia actual en una estructura NativeOverlapped, especificando un delegado que se invoca al completarse la operación de E/S asincrónica y un objeto administrado que actúa como búfer.

Pack(IOCompletionCallback)

Source:
Overlapped.cs
Source:
Overlapped.cs
Source:
Overlapped.cs

Precaución

This method is not safe. Use Pack (iocb, userData) instead. https://go.microsoft.com/fwlink/?linkid=14202

Precaución

This overload is not safe and has been deprecated. Use Pack(IOCompletionCallback?, object?) instead.

Precaución

This method is not safe. Use Pack (iocb, userData) instead. http://go.microsoft.com/fwlink/?linkid=14202

Importante

Esta API no es conforme a CLS.

Empaqueta la instancia actual en una estructura NativeOverlapped, especificando el delegado que se va a invocar cuando finalice la operación de E/S asincrónica.

public:
 System::Threading::NativeOverlapped* Pack(System::Threading::IOCompletionCallback ^ iocb);
[System.CLSCompliant(false)]
[System.Obsolete("This method is not safe.  Use Pack (iocb, userData) instead.  https://go.microsoft.com/fwlink/?linkid=14202")]
public System.Threading.NativeOverlapped* Pack (System.Threading.IOCompletionCallback? iocb);
[System.CLSCompliant(false)]
[System.Obsolete("This overload is not safe and has been deprecated. Use Pack(IOCompletionCallback?, object?) instead.")]
public System.Threading.NativeOverlapped* Pack (System.Threading.IOCompletionCallback? iocb);
[System.CLSCompliant(false)]
[System.Obsolete("This method is not safe.  Use Pack (iocb, userData) instead.  http://go.microsoft.com/fwlink/?linkid=14202")]
public System.Threading.NativeOverlapped* Pack (System.Threading.IOCompletionCallback iocb);
[System.CLSCompliant(false)]
public System.Threading.NativeOverlapped* Pack (System.Threading.IOCompletionCallback iocb);
[System.CLSCompliant(false)]
[System.Obsolete("This method is not safe.  Use Pack (iocb, userData) instead.  http://go.microsoft.com/fwlink/?linkid=14202")]
[System.Security.SecurityCritical]
public System.Threading.NativeOverlapped* Pack (System.Threading.IOCompletionCallback iocb);
[System.CLSCompliant(false)]
[System.Obsolete("This method is not safe.  Use Pack (iocb, userData) instead.  https://go.microsoft.com/fwlink/?linkid=14202")]
public System.Threading.NativeOverlapped* Pack (System.Threading.IOCompletionCallback iocb);
[<System.CLSCompliant(false)>]
[<System.Obsolete("This method is not safe.  Use Pack (iocb, userData) instead.  https://go.microsoft.com/fwlink/?linkid=14202")>]
member this.Pack : System.Threading.IOCompletionCallback -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
[<System.Obsolete("This overload is not safe and has been deprecated. Use Pack(IOCompletionCallback?, object?) instead.")>]
member this.Pack : System.Threading.IOCompletionCallback -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
[<System.Obsolete("This method is not safe.  Use Pack (iocb, userData) instead.  http://go.microsoft.com/fwlink/?linkid=14202")>]
member this.Pack : System.Threading.IOCompletionCallback -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
member this.Pack : System.Threading.IOCompletionCallback -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
[<System.Obsolete("This method is not safe.  Use Pack (iocb, userData) instead.  http://go.microsoft.com/fwlink/?linkid=14202")>]
[<System.Security.SecurityCritical>]
member this.Pack : System.Threading.IOCompletionCallback -> nativeptr<System.Threading.NativeOverlapped>

Parámetros

iocb
IOCompletionCallback

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

Devoluciones

Puntero no administrado a una estructura NativeOverlapped.

Atributos

Excepciones

El objeto Overlapped actual ya se ha empaquetado.

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 Unpack que se llama a .

Importante

El autor de la llamada es responsable de anclar el búfer. Sin embargo, si el dominio de aplicación se descarga, el identificador del búfer anclado se destruye y se libera el búfer, dejando la operación de E/S para escribir en la dirección libre. Por este motivo, es mejor usar la sobrecarga del Pack(IOCompletionCallback, Object) método, en la que el tiempo de ejecución ancla el búfer.

Se aplica a

Pack(IOCompletionCallback, Object)

Source:
Overlapped.cs
Source:
Overlapped.cs
Source:
Overlapped.cs

Importante

Esta API no es conforme a CLS.

Empaqueta la instancia actual en una estructura NativeOverlapped, especificando un delegado que se invoca al completarse la operación de E/S asincrónica y un objeto administrado que actúa como búfer.

public:
 System::Threading::NativeOverlapped* Pack(System::Threading::IOCompletionCallback ^ iocb, System::Object ^ userData);
[System.CLSCompliant(false)]
public System.Threading.NativeOverlapped* Pack (System.Threading.IOCompletionCallback? iocb, object? userData);
[System.CLSCompliant(false)]
public System.Threading.NativeOverlapped* Pack (System.Threading.IOCompletionCallback iocb, object userData);
[System.CLSCompliant(false)]
[System.Runtime.InteropServices.ComVisible(false)]
public System.Threading.NativeOverlapped* Pack (System.Threading.IOCompletionCallback iocb, object userData);
[System.CLSCompliant(false)]
[System.Runtime.InteropServices.ComVisible(false)]
[System.Security.SecurityCritical]
public System.Threading.NativeOverlapped* Pack (System.Threading.IOCompletionCallback iocb, object userData);
[<System.CLSCompliant(false)>]
member this.Pack : System.Threading.IOCompletionCallback * obj -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.Pack : System.Threading.IOCompletionCallback * obj -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
[<System.Runtime.InteropServices.ComVisible(false)>]
[<System.Security.SecurityCritical>]
member this.Pack : System.Threading.IOCompletionCallback * obj -> nativeptr<System.Threading.NativeOverlapped>

Parámetros

iocb
IOCompletionCallback

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

userData
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.

Devoluciones

Puntero no administrado a una estructura NativeOverlapped.

Atributos

Excepciones

El objeto Overlapped actual ya se ha empaquetado.

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 Unpack que se llama a .

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

Nota

El tiempo de ejecución ancla el búfer o los búferes especificados en userData durante la operación de E/S. Si el dominio de aplicación se descarga, el tiempo de ejecución mantiene la memoria anclada hasta que se complete la operación de E/S.

Se aplica a