Overlapped.UnsafePack Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Empaqueta la instancia actual en una NativeOverlapped estructura. No propaga la pila de llamadas.
Sobrecargas
| Nombre | Description |
|---|---|
| UnsafePack(IOCompletionCallback) |
Obsoletos.
Obsoletos.
Obsoletos.
Empaqueta la instancia actual en una NativeOverlapped estructura que especifica el delegado que se va a invocar cuando se completa la operación de E/S asincrónica. No propaga la pila de llamadas. |
| UnsafePack(IOCompletionCallback, Object) |
Empaqueta la instancia actual en una NativeOverlapped estructura, especificando el delegado que se va a invocar cuando se completa la operación asincrónica de E/S y el objeto administrado que actúa como búfer. No propaga la pila de llamadas. |
UnsafePack(IOCompletionCallback)
- Source:
- Overlapped.cs
- Source:
- Overlapped.cs
- Source:
- Overlapped.cs
- Source:
- Overlapped.cs
- Source:
- Overlapped.cs
Precaución
This overload is not safe and has been deprecated. Use UnsafePack(IOCompletionCallback?, object?) instead.
Precaución
This method is not safe. Use UnsafePack (iocb, userData) instead. https://go.microsoft.com/fwlink/?linkid=14202
Precaución
This method is not safe. Use UnsafePack (iocb, userData) instead. http://go.microsoft.com/fwlink/?linkid=14202
Importante
Esta API no es conforme a CLS.
Empaqueta la instancia actual en una NativeOverlapped estructura que especifica el delegado que se va a invocar cuando se completa la operación de E/S asincrónica. No propaga la pila de llamadas.
public:
System::Threading::NativeOverlapped* UnsafePack(System::Threading::IOCompletionCallback ^ iocb);
[System.CLSCompliant(false)]
[System.Obsolete("This overload is not safe and has been deprecated. Use UnsafePack(IOCompletionCallback?, object?) instead.")]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback? iocb);
[System.CLSCompliant(false)]
[System.Obsolete("This method is not safe. Use UnsafePack (iocb, userData) instead. https://go.microsoft.com/fwlink/?linkid=14202")]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback? iocb);
[System.CLSCompliant(false)]
[System.Obsolete("This method is not safe. Use UnsafePack (iocb, userData) instead. http://go.microsoft.com/fwlink/?linkid=14202")]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback iocb);
[System.CLSCompliant(false)]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback iocb);
[System.CLSCompliant(false)]
[System.Obsolete("This method is not safe. Use UnsafePack (iocb, userData) instead. http://go.microsoft.com/fwlink/?linkid=14202")]
[System.Security.SecurityCritical]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback iocb);
[System.CLSCompliant(false)]
[System.Obsolete("This method is not safe. Use UnsafePack (iocb, userData) instead. https://go.microsoft.com/fwlink/?linkid=14202")]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback iocb);
[<System.CLSCompliant(false)>]
[<System.Obsolete("This overload is not safe and has been deprecated. Use UnsafePack(IOCompletionCallback?, object?) instead.")>]
member this.UnsafePack : System.Threading.IOCompletionCallback -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
[<System.Obsolete("This method is not safe. Use UnsafePack (iocb, userData) instead. https://go.microsoft.com/fwlink/?linkid=14202")>]
member this.UnsafePack : System.Threading.IOCompletionCallback -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
[<System.Obsolete("This method is not safe. Use UnsafePack (iocb, userData) instead. http://go.microsoft.com/fwlink/?linkid=14202")>]
member this.UnsafePack : System.Threading.IOCompletionCallback -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
member this.UnsafePack : System.Threading.IOCompletionCallback -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
[<System.Obsolete("This method is not safe. Use UnsafePack (iocb, userData) instead. http://go.microsoft.com/fwlink/?linkid=14202")>]
[<System.Security.SecurityCritical>]
member this.UnsafePack : System.Threading.IOCompletionCallback -> nativeptr<System.Threading.NativeOverlapped>
Parámetros
- iocb
- IOCompletionCallback
IOCompletionCallback Delegado que representa el método de devolución de llamada invocado cuando se completa la operación asincrónica de E/S.
Devoluciones
Puntero no administrado a una NativeOverlapped estructura.
- Atributos
Excepciones
El actual Overlapped 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 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 UnsafePack(IOCompletionCallback, Object) método, en la que el tiempo de ejecución ancla el búfer.
Caution
El uso del UnsafePack método podría abrir accidentalmente un agujero de seguridad. La seguridad de acceso al código basa sus comprobaciones de permisos en los permisos de todos los llamadores de la pila. El UnsafePack método no propaga la pila de llamadas. Es posible que el código malintencionado pueda aprovechar esto para evitar comprobaciones de permisos.
Se aplica a
UnsafePack(IOCompletionCallback, Object)
- Source:
- Overlapped.cs
- Source:
- Overlapped.cs
- Source:
- Overlapped.cs
- Source:
- Overlapped.cs
- Source:
- Overlapped.cs
Importante
Esta API no es conforme a CLS.
Empaqueta la instancia actual en una NativeOverlapped estructura, especificando el delegado que se va a invocar cuando se completa la operación asincrónica de E/S y el objeto administrado que actúa como búfer. No propaga la pila de llamadas.
public:
System::Threading::NativeOverlapped* UnsafePack(System::Threading::IOCompletionCallback ^ iocb, System::Object ^ userData);
[System.CLSCompliant(false)]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback? iocb, object? userData);
[System.CLSCompliant(false)]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback iocb, object userData);
[System.CLSCompliant(false)]
[System.Runtime.InteropServices.ComVisible(false)]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback iocb, object userData);
[System.CLSCompliant(false)]
[System.Runtime.InteropServices.ComVisible(false)]
[System.Security.SecurityCritical]
public System.Threading.NativeOverlapped* UnsafePack(System.Threading.IOCompletionCallback iocb, object userData);
[<System.CLSCompliant(false)>]
member this.UnsafePack : System.Threading.IOCompletionCallback * obj -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.UnsafePack : System.Threading.IOCompletionCallback * obj -> nativeptr<System.Threading.NativeOverlapped>
[<System.CLSCompliant(false)>]
[<System.Runtime.InteropServices.ComVisible(false)>]
[<System.Security.SecurityCritical>]
member this.UnsafePack : System.Threading.IOCompletionCallback * obj -> nativeptr<System.Threading.NativeOverlapped>
Parámetros
- iocb
- IOCompletionCallback
IOCompletionCallback Delegado que representa el método de devolución de llamada invocado cuando se completa la operación asincrónica de E/S.
- userData
- Object
Objeto o matriz de objetos que representan 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 NativeOverlapped estructura.
- Atributos
Excepciones
El autor de la llamada no tiene el permiso necesario.
El actual Overlapped ya está 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.
El tiempo de ejecución ancla el búfer o los búferes especificados duranteuserData 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.
Caution
El uso del UnsafePack método podría abrir accidentalmente un agujero de seguridad. La seguridad de acceso al código basa sus comprobaciones de permisos en los permisos de todos los llamadores de la pila. El UnsafePack método no propaga la pila de llamadas. Es posible que el código malintencionado pueda aprovechar esto para evitar comprobaciones de permisos.