Socket.EndSendTo(IAsyncResult) Methode

Definition

Beendet einen ausstehenden asynchronen Sendevorgang an einen bestimmten Zielort.

public:
 int EndSendTo(IAsyncResult ^ asyncResult);
public int EndSendTo (IAsyncResult asyncResult);
member this.EndSendTo : IAsyncResult -> int
Public Function EndSendTo (asyncResult As IAsyncResult) As Integer

Parameter

asyncResult
IAsyncResult

Ein IAsyncResult, das Zustandsinformationen über diesen asynchronen Vorgang sowie ggf. vorhandene benutzerdefinierte Daten speichert.

Gibt zurück

Wenn erfolgreich, die Anzahl der gesendeten Bytes, andernfalls ein Fehler aufgrund eines ungültigen Socket.

Ausnahmen

asyncResult ist null.

asyncResult wurde nicht durch einen Aufruf der BeginSendTo(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)-Methode zurückgegeben.

EndSendTo(IAsyncResult) wurde bereits für den asynchronen Sendevorgang aufgerufen.

Fehler beim Versuch, auf den Socket zuzugreifen.

- oder -

Nur .NET 7+: Die Socket wurde geschlossen.

nur .NET Framework, .NET Core und .NET 5-6: Die Socket wurde geschlossen.

Hinweise

Wichtig

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

EndSendTo schließt den von gestarteten Vorgang ab BeginSendTo. Sie müssen das übergeben, das IAsyncResult vom übereinstimmenden BeginSendTo Aufruf erstellt wurde.

Wenn Sie ein verbindungsloses Protokoll verwenden, wird blockiert, EndSendTo bis das Datagramm gesendet wird. Wenn Sie ein verbindungsorientiertes Protokoll verwenden, wird blockiert, EndSendTo bis die angeforderte Anzahl von Bytes gesendet wird. Es gibt keine Garantie, dass die von Ihnen gesendeten Daten sofort im Netzwerk angezeigt werden. Um die Netzwerkeffizienz zu erhöhen, kann das zugrunde liegende System die Übertragung verzögern, bis eine erhebliche Menge ausgehender Daten gesammelt wird. Ein erfolgreicher Abschluss der BeginSendTo Methode bedeutet, dass das zugrunde liegende System Platz zum Puffern Ihrer Daten für ein Netzwerk sendet.

Hinweis

Wenn Sie erhalten eine SocketException, verwenden die SocketException.ErrorCode Eigenschaft, um den spezifischen Fehlercode zu erhalten. Nachdem Sie diesen Code erhalten haben, finden Sie eine ausführliche Beschreibung des Fehlers in der Dokumentation zur Windows Sockets-API, Version 2 .

Hinweis

Dieser Member gibt Ablaufverfolgungsinformationen aus, wenn Sie die Netzwerkablaufverfolgung in der Anwendung aktivieren. Weitere Informationen finden Sie unter Netzwerkablaufverfolgung in .NET Framework.

Gilt für: