UdpClient.ReceiveAsync 方法

定義

多載

ReceiveAsync()

非同步傳回由遠端主機傳送的 UDP 資料包。

ReceiveAsync(CancellationToken)

非同步傳回由遠端主機傳送的 UDP 資料包。

ReceiveAsync()

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

非同步傳回由遠端主機傳送的 UDP 資料包。

public:
 System::Threading::Tasks::Task<System::Net::Sockets::UdpReceiveResult> ^ ReceiveAsync();
public System.Threading.Tasks.Task<System.Net.Sockets.UdpReceiveResult> ReceiveAsync ();
member this.ReceiveAsync : unit -> System.Threading.Tasks.Task<System.Net.Sockets.UdpReceiveResult>
Public Function ReceiveAsync () As Task(Of UdpReceiveResult)

傳回

工作物件,表示非同步作業。

例外狀況

基礎 Socket 已關閉。

存取通訊端時發生錯誤。

備註

這項作業不會封鎖。 傳回 Task<TResult>> 的物件會在收到UDP封包之後完成。

如果您在 方法中 Connect 指定預設遠端主機,這個方法只會接受來自該主機的數據報。 所有其他數據報都會被捨棄。

如果您收到 SocketException,請使用 SocketException.ErrorCode 來取得特定的錯誤碼。 取得此程式代碼之後,您可以參閱 Windows Sockets 第 2 版 API 錯誤碼 檔,以取得錯誤的詳細描述。

警告

如果您想要接收多播的數據報,請勿在呼叫此方法之前呼叫 Connect 方法。 UdpClient您必須使用多播埠號碼來建立您用來接收資料報的 。

適用於

ReceiveAsync(CancellationToken)

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

非同步傳回由遠端主機傳送的 UDP 資料包。

public:
 System::Threading::Tasks::ValueTask<System::Net::Sockets::UdpReceiveResult> ReceiveAsync(System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.ValueTask<System.Net.Sockets.UdpReceiveResult> ReceiveAsync (System.Threading.CancellationToken cancellationToken);
member this.ReceiveAsync : System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<System.Net.Sockets.UdpReceiveResult>
Public Function ReceiveAsync (cancellationToken As CancellationToken) As ValueTask(Of UdpReceiveResult)

參數

cancellationToken
CancellationToken

用來監視是否有取消要求的語彙基元。

傳回

代表非同步作業的 ValueTask<TResult>

例外狀況

基礎 Socket 已關閉。

存取通訊端時發生錯誤。

取消令牌已取消。 此例外狀況會儲存在傳回的工作中。

適用於