Socket.BeginDisconnect(Boolean, AsyncCallback, Object) 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í.
Comienza una solicitud asincrónica para la desconexión de un extremo remoto.
public:
IAsyncResult ^ BeginDisconnect(bool reuseSocket, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginDisconnect (bool reuseSocket, AsyncCallback? callback, object? state);
public IAsyncResult BeginDisconnect (bool reuseSocket, AsyncCallback callback, object state);
member this.BeginDisconnect : bool * AsyncCallback * obj -> IAsyncResult
Public Function BeginDisconnect (reuseSocket As Boolean, callback As AsyncCallback, state As Object) As IAsyncResult
Parámetros
- reuseSocket
- Boolean
true
si se puede reutilizar el socket una vez cerrada la conexión; de lo contrario, false
.
- callback
- AsyncCallback
Delegado AsyncCallback.
- state
- Object
Objeto que contiene la información de estado para esta solicitud.
Devoluciones
Objeto IAsyncResult que hace referencia a la operación asincrónica.
Excepciones
El objeto Socket se ha cerrado.
Solo .NET Framework y .NET 5 y versiones anteriores: se produjo un error al intentar acceder al socket.
Comentarios
Importante
Se trata de una API de compatibilidad. No se recomienda usar los métodos de APM (Begin*
y End*
) para el nuevo desarrollo. En su lugar, use los Task
equivalentes basados en .
Si usa un protocolo orientado a la conexión, puede llamar al método para iniciar la BeginDisconnect desconexión desde un punto de conexión remoto. Si reuseSocket
es true
, puede reutilizar el socket.
Puede pasar una devolución de llamada que implemente AsyncCallback para BeginDisconnect recibir notificaciones sobre la finalización de la operación de desconexión. Tenga en cuenta que si la pila de red subyacente completa la operación de forma sincrónica, es posible que la devolución de llamada se ejecute en línea durante la llamada a BeginDisconnect. En este caso, la CompletedSynchronously propiedad del devuelto IAsyncResult se establecerá true
en para indicar que el método se completó sincrónicamente. Utilice la AsyncState propiedad de IAsyncResult para obtener el objeto de estado pasado al BeginDisconnect método .
La BeginDisconnect operación debe completarse llamando al EndDisconnect método . Normalmente, el delegado proporcionado AsyncCallback invoca el método . EndDisconnect bloqueará el subproceso que realiza la llamada hasta que se complete la operación.
Nota
Si recibe una SocketException excepción, use la SocketException.ErrorCode propiedad para obtener el código de error específico.
Nota
Este miembro genera información de seguimiento cuando se habilita el seguimiento de red en la aplicación. Para obtener más información, vea Seguimiento de red en .NET Framework.