Socket.EndDisconnect(IAsyncResult) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Kończy oczekujące żądanie asynchronicznego rozłączenia.
public:
void EndDisconnect(IAsyncResult ^ asyncResult);
public void EndDisconnect (IAsyncResult asyncResult);
member this.EndDisconnect : IAsyncResult -> unit
Public Sub EndDisconnect (asyncResult As IAsyncResult)
Parametry
- asyncResult
- IAsyncResult
IAsyncResult Obiekt, który przechowuje informacje o stanie i wszystkie dane zdefiniowane przez użytkownika dla tej operacji asynchronicznej.
Wyjątki
tylko .NET Framework, .NET Core i .NET 5-6: Socket została zamknięta.
asyncResult
to null
.
asyncResult
nie został zwrócony przez wywołanie BeginDisconnect(Boolean, AsyncCallback, Object) metody .
EndDisconnect(IAsyncResult) wcześniej wywoływano połączenie asynchroniczne.
Wystąpił błąd podczas próby uzyskania dostępu do gniazda.
-lub-
Tylko platforma .NET 7+ : Socket została zamknięta.
Upłynął limit czasu żądania rozłączenia.
Uwagi
Ważne
Jest to interfejs API zgodności. Nie zalecamy używania metod APM (Begin*
i End*
) do nowego programowania. Zamiast tego należy użyć Task
odpowiedników opartych na protokole .
EndDisconnect kończy operację rozpoczętą przez BeginDisconnect. Musisz przekazać IAsyncResult utworzony przez odpowiednie BeginDisconnect wywołanie. EndDisconnect zablokuje wątek wywołujący do momentu ukończenia operacji.
Uwaga
Jeśli zostanie wyświetlony element SocketException, użyj SocketException.ErrorCode właściwości , aby uzyskać określony kod błędu.
Uwaga
Ten element członkowski generuje informacje ze śledzenia pod warunkiem włączenia funkcji śledzenia sieci w aplikacji. Aby uzyskać więcej informacji, zobacz Śledzenie sieci w .NET Framework.