SocketTaskExtensions.ReceiveAsync 方法

定義

多載

ReceiveAsync(Socket, ArraySegment<Byte>, SocketFlags)

從已連線的通訊端擷取資料。

ReceiveAsync(Socket, IList<ArraySegment<Byte>>, SocketFlags)

從已連線的通訊端擷取資料。

ReceiveAsync(Socket, Memory<Byte>, SocketFlags, CancellationToken)

從已連線的通訊端擷取資料。

ReceiveAsync(Socket, ArraySegment<Byte>, SocketFlags)

來源:
SocketTaskExtensions.cs
來源:
SocketTaskExtensions.cs
來源:
SocketTaskExtensions.cs

從已連線的通訊端擷取資料。

C#
public static System.Threading.Tasks.Task<int> ReceiveAsync(this System.Net.Sockets.Socket socket, ArraySegment<byte> buffer, System.Net.Sockets.SocketFlags socketFlags);

參數

socket
Socket

執行接收作業的通訊端。

buffer
ArraySegment<Byte>

陣列,是接收資料的儲存位置。

socketFlags
SocketFlags

SocketFlags 值的位元組合。

傳回

代表非同步接收作業的工作。 TResult 參數的值,包含已接收的位元組數目。

例外狀況

嘗試存取通訊端時發生錯誤。

適用於

.NET 10 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

ReceiveAsync(Socket, IList<ArraySegment<Byte>>, SocketFlags)

來源:
SocketTaskExtensions.cs
來源:
SocketTaskExtensions.cs
來源:
SocketTaskExtensions.cs

從已連線的通訊端擷取資料。

C#
public static System.Threading.Tasks.Task<int> ReceiveAsync(this System.Net.Sockets.Socket socket, System.Collections.Generic.IList<ArraySegment<byte>> buffers, System.Net.Sockets.SocketFlags socketFlags);

參數

socket
Socket

執行接收作業的通訊端。

buffers
IList<ArraySegment<Byte>>

陣列,是接收資料的儲存位置。

socketFlags
SocketFlags

SocketFlags 值的位元組合。

傳回

代表非同步接收作業的工作。 TResult 參數的值,包含已接收的位元組數目。

例外狀況

參數 buffers 為 null。

嘗試存取通訊端時發生錯誤。

適用於

.NET 10 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

ReceiveAsync(Socket, Memory<Byte>, SocketFlags, CancellationToken)

來源:
SocketTaskExtensions.cs
來源:
SocketTaskExtensions.cs
來源:
SocketTaskExtensions.cs

從已連線的通訊端擷取資料。

C#
public static System.Threading.Tasks.ValueTask<int> ReceiveAsync(this System.Net.Sockets.Socket socket, Memory<byte> buffer, System.Net.Sockets.SocketFlags socketFlags, System.Threading.CancellationToken cancellationToken = default);

參數

socket
Socket

執行接收作業的通訊端。

buffer
Memory<Byte>

記憶體區域,為收到之資料的儲存位置。

socketFlags
SocketFlags

SocketFlags 值的位元組合。

cancellationToken
CancellationToken

可用來通知應該取消非同步作業的取消權杖。

傳回

具有接收之位元組數目工作,或已達到串流結尾則為 0。

例外狀況

嘗試存取通訊端時發生錯誤。

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

適用於

.NET 10 和其他版本
產品 版本
.NET Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Standard 2.1