Socket.BeginDisconnect(Boolean, AsyncCallback, Object) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Avvia una richiesta asincrona di disconnessione da un endpoint 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
Parametri
- reuseSocket
- Boolean
true
se il socket può essere riutilizzato una volta chiusa la connessione; in caso contrario, false
.
- callback
- AsyncCallback
Delegato AsyncCallback.
- state
- Object
Oggetto che contiene informazioni sullo stato per questa richiesta.
Restituisce
Oggetto IAsyncResult che fa riferimento all'operazione asincrona.
Eccezioni
L'oggetto Socket è stato chiuso.
Solo .NET Framework e .NET 5 e versioni precedenti: si è verificato un errore durante il tentativo di accesso al socket.
Commenti
Importante
Si tratta di un'API di compatibilità. Non è consigliabile usare i metodi APM (Begin*
e End*
) per il nuovo sviluppo. Usare invece gli Task
equivalenti basati su base.
Se si usa un protocollo orientato alla connessione, è possibile chiamare il BeginDisconnect metodo per avviare la disconnessione da un endpoint remoto. Se reuseSocket
è true
, è possibile riutilizzare il socket.
È possibile passare un callback che implementa AsyncCallback per BeginDisconnect ricevere una notifica al completamento dell'operazione di disconnessione. Si noti che se lo stack di rete sottostante completa l'operazione in modo sincrono, il callback potrebbe essere eseguito inline, durante la chiamata a BeginDisconnect. In questo caso, la CompletedSynchronously proprietà sul restituito verrà impostata IAsyncResult su per true
indicare che il metodo è stato completato in modo sincrono. Utilizzare la AsyncState proprietà dell'oggetto IAsyncResult per ottenere l'oggetto state passato al BeginDisconnect metodo .
L'operazione BeginDisconnect deve essere completata chiamando il EndDisconnect metodo . In genere, il metodo viene richiamato dal delegato fornito AsyncCallback . EndDisconnect blocca il thread chiamante fino al completamento dell'operazione.
Nota
Se si riceve un'eccezione SocketException , utilizzare la proprietà per ottenere il SocketException.ErrorCode codice di errore specifico.
Nota
Questo membro genera informazioni di traccia quando viene abilitata la funzionalità di traccia di rete nell'applicazione in uso. Per altre informazioni, vedere Traccia di rete in .NET Framework.