Freigeben über


Socket.BeginDisconnect(Boolean, AsyncCallback, Object) Methode

Definition

Startet eine asynchrone Anforderung zum Trennen von einem Remoteendpunkt.

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

Parameter

reuseSocket
Boolean

truewenn dieser Socket nach dem Schließen der Verbindung wiederverwendet werden kann; andernfalls . false

callback
AsyncCallback

Die AsyncCallback Stellvertretung.

state
Object

Ein Objekt, das Statusinformationen für diese Anforderung enthält.

Gibt zurück

Ein IAsyncResult Objekt, das auf den asynchronen Vorgang verweist.

Ausnahmen

Das Socket Objekt wurde geschlossen.

.NET Framework und .NET 5 und früher: Beim Versuch, auf den Socket zuzugreifen, ist ein Fehler aufgetreten.

Hinweise

Von Bedeutung

Dies ist eine Kompatibilitäts-API. Es wird nicht empfohlen, die Methoden APM (Begin* und End*) für die neue Entwicklung zu verwenden. Verwenden Sie stattdessen die Task-basierten Entsprechungen.

Wenn Sie ein verbindungsorientiertes Protokoll verwenden, können Sie die Methode aufrufen, um die BeginDisconnect Verbindung mit einem Remoteendpunkt zu initiieren. Wenn reuseSocket ja true, können Sie den Socket wiederverwenden.

Sie können einen Rückruf übergeben, der implementiert wird, um über den Abschluss des Verbindungsvorgangs AsyncCallbackBeginDisconnect benachrichtigt zu werden. Beachten Sie, dass, wenn der zugrunde liegende Netzwerkstapel den Vorgang synchron abgeschlossen hat, der Rückruf möglicherweise inline ausgeführt wird, während des Aufrufs von BeginDisconnect. In diesem Fall wird die CompletedSynchronously Eigenschaft für die zurückgegebene IAsyncResult Eigenschaft so festgelegt true , dass die Methode synchron abgeschlossen wurde. Verwenden Sie die AsyncState Eigenschaft des IAsyncResult Zustandsobjekts, das an die BeginDisconnect Methode übergeben wird.

Der BeginDisconnect Vorgang muss durch Aufrufen der EndDisconnect Methode abgeschlossen werden. In der Regel wird die Methode vom bereitgestellten AsyncCallback Delegaten aufgerufen. EndDisconnect blockiert den aufrufenden Thread, bis der Vorgang abgeschlossen ist.

Hinweis

Wenn Sie eine SocketException Ausnahme erhalten, verwenden Sie die SocketException.ErrorCode Eigenschaft, um den spezifischen Fehlercode abzurufen.

Hinweis

Dieses Mitglied gibt Protokollierungsinformationen aus, wenn Sie die Netzwerkablaufverfolgung in Ihrer Anwendung aktivieren. Weitere Informationen finden Sie unter Network Tracing in .NET Framework.

Gilt für: