語言

UdpClient.SendAsync 方法

定義

非同步傳送 UDP 資料報至遠端主機。

多載

名稱 Description
SendAsync(Byte[], Int32)

非同步傳送 UDP 資料報至遠端主機。

SendAsync(ReadOnlyMemory<Byte>, CancellationToken)

非同步傳送 UDP 資料報至遠端主機。

SendAsync(Byte[], Int32, IPEndPoint)

非同步傳送 UDP 資料報至遠端主機。

SendAsync(ReadOnlyMemory<Byte>, IPEndPoint, CancellationToken)

非同步傳送 UDP 資料報至遠端主機。

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

非同步傳送 UDP 資料報至遠端主機。

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

非同步傳送 UDP 資料報至遠端主機。

SendAsync(Byte[], Int32)

來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs

非同步傳送 UDP 資料報至遠端主機。

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)

參數

datagram
Byte[]

一個型別 Byte 的陣列,指定你打算傳送的 UDP 資料報,並以位元組陣列表示。

bytes
Int32

資料報中的位元組數。

傳回

傳回 Task<TResult>。

例外狀況

datagram 是 null。

他們 UdpClient 已經建立了預設的遠端主機。

那是 UdpClient 關門的。

存取該套接字時發生錯誤。

備註

此過載會將資料報傳送至方法中 Connect 建立的遠端主機。 若未 Connect 在呼叫此超載前呼叫,該方法將拋出 SocketException。 如果您收到 SocketException,請使用 SocketException.ErrorCode 以取得特定的錯誤代碼。 取得這些程式碼後,你可以參考 Windows Sockets 版本 2 的 API 錯誤程式碼 文件,了解錯誤的詳細說明。

如果你想將資料報傳送到不同的遠端主機,必須呼叫該 Connect 方法並指定想要的遠端主機。 使用其他 SendAsync 方法的超載方式將資料報傳送到廣播位址。

此方法在任務中儲存所有非使用例外,該方法的同步對應程式可拋出這些例外。 如果回傳的任務中儲存了例外,該例外會在等待任務時拋出。 使用例外錯誤,例如 ArgumentException,仍會同步拋出。 關於儲存的例外,請參見由 Send(Byte[], Int32)拋出的例外。

適用於

SendAsync(ReadOnlyMemory<Byte>, CancellationToken)

來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs

非同步傳送 UDP 資料報至遠端主機。

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)

參數

datagram
ReadOnlyMemory<Byte>

一個 ReadOnlyMemory<T> 型 Byte 別,指定你打算傳送的 UDP 資料報。

cancellationToken
CancellationToken

用來監控取消申請的代幣。 預設值為 None。

傳回

代表非同步傳送操作的 A ValueTask<TResult> 。 其 Result 屬性的值包含傳送的位元組數。

例外狀況

那是 UdpClient 關門的。

存取該套接字時發生錯誤。

取消令牌也被取消了。 此例外會儲存在回傳的任務中。

適用於

SendAsync(Byte[], Int32, IPEndPoint)

來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs

非同步傳送 UDP 資料報至遠端主機。

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)

參數

datagram
Byte[]

一個型別 Byte 的陣列,指定你打算傳送的 UDP 資料報,並以位元組陣列表示。

bytes
Int32

資料報中的位元組數。

endPoint
IPEndPoint

代表 IPEndPoint 主機和傳送資料報的埠口。

傳回

傳回 Task<TResult>。

例外狀況

datagram 是 null。

UdpClient 已經建立了預設的遠端主機。

存取該套接字時發生錯誤。

備註

此方法會將資料報傳送到指定的端點。 在呼叫這個超載之前,你必須先用遠端主機的 IP 位址和埠號建立 , IPEndPoint 讓你的資料報要送到那裡。 你可以將資料報傳送到預設的廣播位址 255.255.255,方法是SocketOptionName.Broadcast指定 .AddressIPEndPoint 建立此 IPEndPoint參數後,將它傳給這個方法 endPoint 作為參數。

如果你想將資料報傳送到任何其他廣播位址,請使用該 Client 方法取得底層 Socket的 ,並將套接字選項設為 SocketOptionName.Broadcast。 你也可以回退使用該 Socket 類別。

警告

如果你已經用該endPoint方法建立了遠端主機,則不要為此方法提供Connect參數。 若有,此方法將拋出 。SocketException 如果您收到 SocketException,請使用 SocketException.ErrorCode 以取得特定的錯誤代碼。 取得這些程式碼後,你可以參考 Windows Sockets 版本 2 的 API 錯誤程式碼 文件,了解錯誤的詳細說明。

此方法在任務中儲存所有非使用例外,該方法的同步對應程式可拋出這些例外。 如果回傳的任務中儲存了例外,該例外會在等待任務時拋出。 使用例外錯誤,例如 ArgumentException,仍會同步拋出。 關於儲存的例外,請參見由 Send(Byte[], Int32, IPEndPoint)拋出的例外。

適用於

SendAsync(ReadOnlyMemory<Byte>, IPEndPoint, CancellationToken)

來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs

非同步傳送 UDP 資料報至遠端主機。

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)

參數

datagram
ReadOnlyMemory<Byte>

一個 ReadOnlyMemory<T> 型 Byte 別,指定你打算傳送的 UDP 資料報。

endPoint
IPEndPoint

代表 IPEndPoint 主機和傳送資料報的埠口。

cancellationToken
CancellationToken

用來監控取消申請的代幣。 預設值為 None。

傳回

代表非同步傳送操作的 A ValueTask<TResult> 。 其 Result 屬性的值包含傳送的位元組數。

例外狀況

UdpClient 已經建立了預設的遠端主機,且 endPoint 並非 null。

那是 UdpClient 關門的。

存取該套接字時發生錯誤。

取消令牌也被取消了。 此例外會儲存在回傳的任務中。

適用於

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

來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs

非同步傳送 UDP 資料報至遠端主機。

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)

參數

datagram
Byte[]

一個型別 Byte 的陣列,指定你打算傳送的 UDP 資料報,並以位元組陣列表示。

bytes
Int32

資料報中的位元組數。

hostname
String

你打算傳送資料報的遠端主機名稱。

port
Int32

你打算通訊的遠端埠號。

傳回

傳回 Task<TResult>。

例外狀況

datagram 是 null。

他們 UdpClient 已經建立了預設的遠端主機。

那是 UdpClient 關門的。

存取該套接字時發生錯誤。

備註

此方法會將資料報傳送到由 hostname 和 port 參數指定的值。 你可以將資料報傳送到預設的廣播位址,方法是將參數值指定為「255.255.255」。hostname

如果你想將資料報傳送到任何其他廣播位址,請使用該 Client 方法取得底層 Socket的 ,並將套接字選項設為 SocketOptionName.Broadcast。 你也可以回退使用該 Socket 類別。

警告

如果你已經用該 Connect 方法建立了遠端主機,請不要提供主機名稱或埠號。 若有,此方法將拋出 。SocketException 如果您收到 SocketException,請使用 SocketException.ErrorCode 以取得特定的錯誤代碼。 取得這些程式碼後,你可以參考 Windows Sockets 版本 2 的 API 錯誤程式碼 文件,了解錯誤的詳細說明。

此方法在任務中儲存所有非使用例外,該方法的同步對應程式可拋出這些例外。 如果回傳的任務中儲存了例外,該例外會在等待任務時拋出。 使用例外錯誤,例如 ArgumentException,仍會同步拋出。 關於儲存的例外,請參見由 Send(Byte[], Int32, String, Int32)拋出的例外。

適用於

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

來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs

非同步傳送 UDP 資料報至遠端主機。

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)

參數

datagram
ReadOnlyMemory<Byte>

一個 ReadOnlyMemory<T> 型 Byte 別,指定你打算傳送的 UDP 資料報。

hostname
String

你打算傳送資料報的遠端主機名稱。

port
Int32

你打算通訊的遠端埠號。

cancellationToken
CancellationToken

用來監控取消申請的代幣。 預設值為 None。

傳回

代表非同步傳送操作的 A ValueTask<TResult> 。 其 Result 屬性的值包含傳送的位元組數。

例外狀況

他們 UdpClient 已經建立了預設的遠端主機。

那是 UdpClient 關門的。

存取該套接字時發生錯誤。

取消令牌也被取消了。 此例外會儲存在回傳的任務中。

適用於