Freigeben über


UdpClient.SendAsync Methode

Definition

Sendet asynchron ein UPD-Datagramm an einen Remotehost.

Überlädt

SendAsync(Byte[], Int32)

Sendet asynchron ein UPD-Datagramm an einen Remotehost.

SendAsync(ReadOnlyMemory<Byte>, CancellationToken)

Sendet asynchron ein UPD-Datagramm an einen Remotehost.

SendAsync(Byte[], Int32, IPEndPoint)

Sendet asynchron ein UPD-Datagramm an einen Remotehost.

SendAsync(ReadOnlyMemory<Byte>, IPEndPoint, CancellationToken)

Sendet asynchron ein UPD-Datagramm an einen Remotehost.

SendAsync(Byte[], Int32, String, Int32)

Sendet asynchron ein UPD-Datagramm an einen Remotehost.

SendAsync(ReadOnlyMemory<Byte>, String, Int32, CancellationToken)

Sendet asynchron ein UPD-Datagramm an einen Remotehost.

SendAsync(Byte[], Int32)

Quelle:
UDPClient.cs
Quelle:
UDPClient.cs
Quelle:
UDPClient.cs

Sendet asynchron ein UPD-Datagramm an einen Remotehost.

public:
 System::Threading::Tasks::Task<int> ^ SendAsync(cli::array <System::Byte> ^ datagram, int bytes);
public System.Threading.Tasks.Task<int> SendAsync (byte[] datagram, int bytes);
member this.SendAsync : byte[] * int -> System.Threading.Tasks.Task<int>
Public Function SendAsync (datagram As Byte(), bytes As Integer) As Task(Of Integer)

Parameter

datagram
Byte[]

Ein Array vom Typ Byte, das das von Ihnen zu sendende UDP-Datagramm in Form eines Bytearrays angibt.

bytes
Int32

Die Anzahl der Bytes im Datagramm.

Gibt zurück

Gibt Task<TResult> zurück.

Ausnahmen

dgram ist null.

Der UdpClient hat bereits einen Standard-Remotehost eingerichtet.

Der UdpClient ist geschlossen.

Beim Zugreifen auf den Socket ist ein Fehler aufgetreten.

Hinweise

Diese Überladung sendet Datagramme an den Remotehost, der in der Connect -Methode eingerichtet wurde. Wenn Sie vor dem Aufrufen dieser Überladung nicht aufrufen Connect , löst die -Methode einen aus SocketException. Wenn Sie einen SocketExceptionerhalten, verwenden Sie SocketException.ErrorCode , um den spezifischen Fehlercode abzurufen. Nachdem Sie diesen Code erhalten haben, finden Sie eine ausführliche Beschreibung des Fehlers in der Dokumentation zur Windows Sockets-API, Version 2 .

Wenn Sie Datagramme an einen anderen Remotehost senden möchten, müssen Sie die Connect -Methode aufrufen und den gewünschten Remotehost angeben. Verwenden Sie eine der anderen SendAsync Methodenüberladungen, um Datagramme an eine Broadcastadresse zu senden.

Diese Methode speichert in der Aufgabe, die sie alle Nichtverwendungsausnahmen zurückgibt, die die synchrone Entsprechung der Methode auslösen kann. Wenn eine Ausnahme in der zurückgegebenen Aufgabe gespeichert wird, wird diese Ausnahme ausgelöst, wenn die Aufgabe erwartet wird. Nutzungsausnahmen, z. B ArgumentException. , werden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie unter die von ausgelösten Send(Byte[], Int32)Ausnahmen.

Gilt für:

SendAsync(ReadOnlyMemory<Byte>, CancellationToken)

Quelle:
UDPClient.cs
Quelle:
UDPClient.cs
Quelle:
UDPClient.cs

Sendet asynchron ein UPD-Datagramm an einen Remotehost.

public System.Threading.Tasks.ValueTask<int> SendAsync (ReadOnlyMemory<byte> datagram, System.Threading.CancellationToken cancellationToken = default);
member this.SendAsync : ReadOnlyMemory<byte> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Function SendAsync (datagram As ReadOnlyMemory(Of Byte), Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)

Parameter

datagram
ReadOnlyMemory<Byte>

Ein ReadOnlyMemory<T> vom Typ Byte , der das UDP-Datagramm angibt, das Sie senden möchten.

cancellationToken
CancellationToken

Das Token zum Überwachen von Abbruchanforderungen. Der Standardwert lautet „Keine“.

Gibt zurück

Eine ValueTask<TResult> , die den asynchronen Sendevorgang darstellt. Der Wert der Result-Eigenschaft enthält die Anzahl der gesendeten Bytes.

Ausnahmen

Der UdpClient ist geschlossen.

Beim Zugreifen auf den Socket ist ein Fehler aufgetreten.

Das Abbruchtoken wurde abgebrochen. Diese Ausnahme wird in der zurückgegebenen Aufgabe gespeichert.

Gilt für:

SendAsync(Byte[], Int32, IPEndPoint)

Quelle:
UDPClient.cs
Quelle:
UDPClient.cs
Quelle:
UDPClient.cs

Sendet asynchron ein UPD-Datagramm an einen Remotehost.

public:
 System::Threading::Tasks::Task<int> ^ SendAsync(cli::array <System::Byte> ^ datagram, int bytes, System::Net::IPEndPoint ^ endPoint);
public System.Threading.Tasks.Task<int> SendAsync (byte[] datagram, int bytes, System.Net.IPEndPoint? endPoint);
public System.Threading.Tasks.Task<int> SendAsync (byte[] datagram, int bytes, System.Net.IPEndPoint endPoint);
member this.SendAsync : byte[] * int * System.Net.IPEndPoint -> System.Threading.Tasks.Task<int>
Public Function SendAsync (datagram As Byte(), bytes As Integer, endPoint As IPEndPoint) As Task(Of Integer)

Parameter

datagram
Byte[]

Ein Array vom Typ Byte, das das von Ihnen zu sendende UDP-Datagramm in Form eines Bytearrays angibt.

bytes
Int32

Die Anzahl der Bytes im Datagramm.

endPoint
IPEndPoint

Ein IPEndPoint, der den Host und Port darstellt, an die das Datagramm gesendet werden soll.

Gibt zurück

Gibt Task<TResult> zurück.

Ausnahmen

dgram ist null.

Der UdpClient hat bereits einen Standard-Remotehost eingerichtet.

Der UdpClient ist geschlossen.

Beim Zugreifen auf den Socket ist ein Fehler aufgetreten.

Hinweise

Diese Methode sendet Datagramme an den angegebenen Endpunkt. Bevor Sie diese Überladung aufrufen, müssen Sie zunächst ein IPEndPoint erstellen, indem Sie die IP-Adresse und Portnummer des Remotehosts verwenden, an den Ihre Datagramme übermittelt werden. Sie können Datagramme an die Standard-Broadcastadresse 255.255.255.255 senden, indem Sie für die Address -Eigenschaft von IPEndPointangebenSocketOptionName.Broadcast. Nachdem Sie diesen IPEndPointerstellt haben, übergeben Sie es als endPoint Parameter an diese Methode.

Wenn Sie Datagramme an eine andere Broadcastadresse senden möchten, verwenden Sie die Client -Methode, um das zugrunde liegende Socketabzurufen, und legen Sie die Socketoption auf fest SocketOptionName.Broadcast. Sie können auch die -Klasse rückgängig machenSocket.

Warnung

Geben Sie für diese Methode keinen Parameter an endPoint , wenn Sie bereits einen Remotehost mit der Connect -Methode eingerichtet haben. Wenn Sie dies tun, löst diese Methode einen aus SocketException. Wenn Sie einen SocketExceptionerhalten, verwenden Sie SocketException.ErrorCode , um den spezifischen Fehlercode abzurufen. Nachdem Sie diesen Code erhalten haben, finden Sie eine ausführliche Beschreibung des Fehlers in der Dokumentation zur Windows Sockets-API, Version 2 .

Diese Methode speichert in der Aufgabe, die sie alle Nichtverwendungsausnahmen zurückgibt, die die synchrone Entsprechung der Methode auslösen kann. Wenn eine Ausnahme in der zurückgegebenen Aufgabe gespeichert wird, wird diese Ausnahme ausgelöst, wenn die Aufgabe erwartet wird. Nutzungsausnahmen, z. B ArgumentException. , werden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie unter die von ausgelösten Send(Byte[], Int32, IPEndPoint)Ausnahmen.

Gilt für:

SendAsync(ReadOnlyMemory<Byte>, IPEndPoint, CancellationToken)

Quelle:
UDPClient.cs
Quelle:
UDPClient.cs
Quelle:
UDPClient.cs

Sendet asynchron ein UPD-Datagramm an einen Remotehost.

public System.Threading.Tasks.ValueTask<int> SendAsync (ReadOnlyMemory<byte> datagram, System.Net.IPEndPoint? endPoint, System.Threading.CancellationToken cancellationToken = default);
member this.SendAsync : ReadOnlyMemory<byte> * System.Net.IPEndPoint * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Function SendAsync (datagram As ReadOnlyMemory(Of Byte), endPoint As IPEndPoint, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)

Parameter

datagram
ReadOnlyMemory<Byte>

Ein ReadOnlyMemory<T> vom Typ Byte , der das UDP-Datagramm angibt, das Sie senden möchten.

endPoint
IPEndPoint

Ein IPEndPoint, der den Host und Port darstellt, an die das Datagramm gesendet werden soll.

cancellationToken
CancellationToken

Das Token zum Überwachen von Abbruchanforderungen. Der Standardwert lautet „Keine“.

Gibt zurück

Eine ValueTask<TResult> , die den asynchronen Sendevorgang darstellt. Der Wert der Result-Eigenschaft enthält die Anzahl der gesendeten Bytes.

Ausnahmen

UdpClient hat bereits einen Standard-Remotehost eingerichtet und endPoint ist nicht null.

Der UdpClient ist geschlossen.

Beim Zugreifen auf den Socket ist ein Fehler aufgetreten.

Das Abbruchtoken wurde abgebrochen. Diese Ausnahme wird in der zurückgegebenen Aufgabe gespeichert.

Gilt für:

SendAsync(Byte[], Int32, String, Int32)

Quelle:
UDPClient.cs
Quelle:
UDPClient.cs
Quelle:
UDPClient.cs

Sendet asynchron ein UPD-Datagramm an einen Remotehost.

public:
 System::Threading::Tasks::Task<int> ^ SendAsync(cli::array <System::Byte> ^ datagram, int bytes, System::String ^ hostname, int port);
public System.Threading.Tasks.Task<int> SendAsync (byte[] datagram, int bytes, string? hostname, int port);
public System.Threading.Tasks.Task<int> SendAsync (byte[] datagram, int bytes, string hostname, int port);
member this.SendAsync : byte[] * int * string * int -> System.Threading.Tasks.Task<int>
Public Function SendAsync (datagram As Byte(), bytes As Integer, hostname As String, port As Integer) As Task(Of Integer)

Parameter

datagram
Byte[]

Ein Array vom Typ Byte, das das von Ihnen zu sendende UDP-Datagramm in Form eines Bytearrays angibt.

bytes
Int32

Die Anzahl der Bytes im Datagramm.

hostname
String

Der Name des Remotehosts, an den das Datagramm gesendet werden soll.

port
Int32

Die Nummer des Remoteports, mit dem kommuniziert werden soll.

Gibt zurück

Gibt Task<TResult> zurück.

Ausnahmen

dgram ist null.

Der UdpClient hat bereits einen Standard-Remotehost eingerichtet.

Der UdpClient ist geschlossen.

Beim Zugreifen auf den Socket ist ein Fehler aufgetreten.

Hinweise

Diese Methode sendet Datagramme an die Werte, die durch die hostname Parameter und port angegeben werden. Sie können Datagramme an die Standard-Broadcastadresse senden, indem Sie "255.255.255.255.255" für den hostname Parameterwert angeben.

Wenn Sie Datagramme an eine andere Broadcastadresse senden möchten, verwenden Sie die Client -Methode, um das zugrunde liegende Socketabzurufen, und legen Sie die Socketoption auf fest SocketOptionName.Broadcast. Sie können auch die -Klasse rückgängig machenSocket.

Warnung

Geben Sie für diese Methode keinen Hostnamen oder Port an, wenn Sie bereits einen Remotehost mit der Connect -Methode eingerichtet haben. Wenn Sie dies tun, löst diese Methode einen aus SocketException. Wenn Sie einen SocketExceptionerhalten, verwenden Sie SocketException.ErrorCode , um den spezifischen Fehlercode abzurufen. Nachdem Sie diesen Code erhalten haben, finden Sie eine ausführliche Beschreibung des Fehlers in der Dokumentation zur Windows Sockets-API, Version 2 .

Diese Methode speichert in der Aufgabe, die sie alle Nichtverwendungsausnahmen zurückgibt, die die synchrone Entsprechung der Methode auslösen kann. Wenn eine Ausnahme in der zurückgegebenen Aufgabe gespeichert wird, wird diese Ausnahme ausgelöst, wenn die Aufgabe erwartet wird. Nutzungsausnahmen, z. B ArgumentException. , werden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie unter die von ausgelösten Send(Byte[], Int32, String, Int32)Ausnahmen.

Gilt für:

SendAsync(ReadOnlyMemory<Byte>, String, Int32, CancellationToken)

Quelle:
UDPClient.cs
Quelle:
UDPClient.cs
Quelle:
UDPClient.cs

Sendet asynchron ein UPD-Datagramm an einen Remotehost.

public System.Threading.Tasks.ValueTask<int> SendAsync (ReadOnlyMemory<byte> datagram, string? hostname, int port, System.Threading.CancellationToken cancellationToken = default);
member this.SendAsync : ReadOnlyMemory<byte> * string * int * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Function SendAsync (datagram As ReadOnlyMemory(Of Byte), hostname As String, port As Integer, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)

Parameter

datagram
ReadOnlyMemory<Byte>

Ein ReadOnlyMemory<T> vom Typ Byte , der das UDP-Datagramm angibt, das Sie senden möchten.

hostname
String

Der Name des Remotehosts, an den das Datagramm gesendet werden soll.

port
Int32

Die Nummer des Remoteports, mit dem kommuniziert werden soll.

cancellationToken
CancellationToken

Das Token zum Überwachen von Abbruchanforderungen. Der Standardwert lautet „Keine“.

Gibt zurück

Ein ValueTask<TResult> , der den asynchronen Sendevorgang darstellt. Der Wert der Result-Eigenschaft enthält die Anzahl der gesendeten Bytes.

Ausnahmen

Der UdpClient hat bereits einen Standard-Remotehost eingerichtet.

Der UdpClient ist geschlossen.

Beim Zugreifen auf den Socket ist ein Fehler aufgetreten.

Das Abbruchtoken wurde abgebrochen. Diese Ausnahme wird in der zurückgegebenen Aufgabe gespeichert.

Gilt für: