Socket.BeginDisconnect(Boolean, AsyncCallback, Object) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Lance une demande asynchrone de déconnexion d'un point de terminaison distant.
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
Paramètres
- reuseSocket
- Boolean
true
si ce socket peut être réutilisé après la fermeture de la connexion ; sinon, false
.
- callback
- AsyncCallback
Délégué AsyncCallback.
- state
- Object
Objet qui contient les informations d’état de cette demande.
Retours
Objet IAsyncResult qui fait référence à l'opération asynchrone.
Exceptions
L’objet Socket a été fermé.
.NET Framework et .NET 5 et versions antérieures uniquement : une erreur s’est produite lors de la tentative d’accès au socket.
Remarques
Important
Il s’agit d’une API de compatibilité. Nous vous déconseillons d’utiliser les méthodes APM (Begin*
et End*
) pour un nouveau développement. Utilisez plutôt les Task
équivalents basés sur .
Si vous utilisez un protocole orienté connexion, vous pouvez appeler la méthode pour lancer la BeginDisconnect déconnexion à partir d’un point de terminaison distant. Si reuseSocket
a la valeur true
, vous pouvez réutiliser le socket.
Vous pouvez passer un rappel qui implémente AsyncCallback sur BeginDisconnect afin d’être informé de la fin de l’opération de déconnexion. Notez que si la pile réseau sous-jacente termine l’opération de manière synchrone, le rappel peut être exécuté inline, pendant l’appel à BeginDisconnect. Dans ce cas, la CompletedSynchronously propriété sur le retourné IAsyncResult est définie true
sur pour indiquer que la méthode s’est terminée de manière synchrone. Utilisez la AsyncState propriété de pour IAsyncResult obtenir l’objet d’état passé à la BeginDisconnect méthode .
L’opération BeginDisconnect doit être terminée en appelant la EndDisconnect méthode . En règle générale, la méthode est appelée par le délégué fourni AsyncCallback . EndDisconnect bloque le thread appelant jusqu’à ce que l’opération soit terminée.
Notes
Si vous recevez une SocketException exception, utilisez la SocketException.ErrorCode propriété pour obtenir le code d’erreur spécifique.
Notes
Ce membre génère des informations de traçage lorsque vous activez le traçage réseau dans votre application. Pour plus d’informations, consultez Suivi réseau dans .NET Framework.