Socket.EndSendTo(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 asynchroniczne wysyłanie do określonej lokalizacji.
public:
int EndSendTo(IAsyncResult ^ asyncResult);
public int EndSendTo (IAsyncResult asyncResult);
member this.EndSendTo : IAsyncResult -> int
Public Function EndSendTo (asyncResult As IAsyncResult) As Integer
Parametry
- asyncResult
- IAsyncResult
Element IAsyncResult , który przechowuje informacje o stanie i wszystkie dane zdefiniowane przez użytkownika dla tej operacji asynchronicznej.
Zwraca
Jeśli przebiegnie pomyślnie, liczba wysłanych bajtów; w przeciwnym razie nieprawidłowy Socket błąd.
Wyjątki
asyncResult
to null
.
asyncResult
nie został zwrócony przez wywołanie BeginSendTo(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object) metody .
EndSendTo(IAsyncResult) został wcześniej wywołany do wysyłania asynchronicznego.
Wystąpił błąd podczas próby uzyskania dostępu do gniazda.
-lub-
Tylko platforma .NET 7+ : Socket została zamknięta.
tylko .NET Framework, .NET Core i .NET 5-6: Socket została zamknięta.
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 .
EndSendTo kończy operację rozpoczętą przez BeginSendTo. Musisz przekazać IAsyncResult utworzony przez odpowiednie BeginSendTo wywołanie.
Jeśli używasz protokołu bez połączenia, EndSendTo zablokuje się do momentu wysłania datagramu. Jeśli używasz protokołu zorientowanego na połączenie, EndSendTo zostanie zablokowany do momentu wysłania żądanej liczby bajtów. Nie ma gwarancji, że wysyłane dane będą natychmiast wyświetlane w sieci. Aby zwiększyć wydajność sieci, podstawowy system może opóźnić transmisję do momentu zebrania znacznej ilości danych wychodzących. Pomyślne ukończenie BeginSendTo metody oznacza, że podstawowy system miał miejsce na buforować dane dla wysyłania sieciowego.
Uwaga
Jeśli zostanie wyświetlony element SocketException, użyj SocketException.ErrorCode właściwości , aby uzyskać określony kod błędu. Po uzyskaniu tego kodu zapoznaj się z dokumentacją kodu błędu interfejsu API gniazda systemu Windows w wersji 2 , aby uzyskać szczegółowy opis 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.
Dotyczy
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla