NetworkStream.WriteAsync 方法

定义

重载

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

以异步操作的形式,将只读内存字节内存范围中的数据写入 NetworkStream

WriteAsync(Byte[], Int32, Int32, CancellationToken)

以异步操作形式,将指定字节数组范围内的数据写入 NetworkStream

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Source:
NetworkStream.cs
Source:
NetworkStream.cs
Source:
NetworkStream.cs

以异步操作的形式,将只读内存字节内存范围中的数据写入 NetworkStream

public override System.Threading.Tasks.ValueTask WriteAsync (ReadOnlyMemory<byte> buffer, System.Threading.CancellationToken cancellationToken = default);
override this.WriteAsync : ReadOnlyMemory<byte> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask
Public Overrides Function WriteAsync (buffer As ReadOnlyMemory(Of Byte), Optional cancellationToken As CancellationToken = Nothing) As ValueTask

参数

buffer
ReadOnlyMemory<Byte>

一个包含要写入 NetworkStream 的数据的内存区域。

cancellationToken
CancellationToken

要监视取消请求的标记。

返回

表示异步写入操作的任务。

例外

访问套接字时出错。

- 或 -

写入到网络时出错。

取消令牌已取消。 此异常存储在返回的任务中。

注解

此方法将 中的所有 buffer 字节发送到网络。

注意

通过调用 CanWrite 属性检查 是否NetworkStream可写。 如果尝试写入 NetworkStream 不可写的 ,则会收到 InvalidOperationException

注意

如果收到 ,IOException检查 属性InnerException来确定它是否由 SocketException引起。 如果是这样,请使用 ErrorCode 属性获取特定的错误代码,并参阅 Windows 套接字版本 2 API 错误代码文档以获取错误的详细说明。

适用于

WriteAsync(Byte[], Int32, Int32, CancellationToken)

Source:
NetworkStream.cs
Source:
NetworkStream.cs
Source:
NetworkStream.cs

以异步操作形式,将指定字节数组范围内的数据写入 NetworkStream

public:
 override System::Threading::Tasks::Task ^ WriteAsync(cli::array <System::Byte> ^ buffer, int offset, int size, System::Threading::CancellationToken cancellationToken);
public:
 override System::Threading::Tasks::Task ^ WriteAsync(cli::array <System::Byte> ^ buffer, int offset, int count, System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task WriteAsync (byte[] buffer, int offset, int size, System.Threading.CancellationToken cancellationToken);
public override System.Threading.Tasks.Task WriteAsync (byte[] buffer, int offset, int count, System.Threading.CancellationToken cancellationToken);
override this.WriteAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task
override this.WriteAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Overrides Function WriteAsync (buffer As Byte(), offset As Integer, size As Integer, cancellationToken As CancellationToken) As Task
Public Overrides Function WriteAsync (buffer As Byte(), offset As Integer, count As Integer, cancellationToken As CancellationToken) As Task

参数

buffer
Byte[]

一个包含要写入 NetworkStream 的数据的字节数组。

offset
Int32

buffer 中开始写入数据的位置。

sizecount
Int32

要写入 NetworkStream 的字节数。

cancellationToken
CancellationToken

要监视取消请求的标记。

返回

表示异步写入操作的任务。

例外

buffer 参数为 null

offset 参数小于 0。

- 或 -

offset 参数大于 buffer 的长度。

- 或 -

size 参数小于 0。

- 或 -

size 参数大于 buffer 的长度减去 offset 参数的值。

写入到网络时出错。

- 或 -

访问套接字时出错。

取消令牌已取消。 此异常存储在返回的任务中。

注解

此方法从指定的 offset 开始,并将字节从 的内容buffer发送到size网络。

注意

通过调用 CanWrite 属性检查 是否NetworkStream可写。 如果尝试写入 NetworkStream 不可写的 ,则会收到 InvalidOperationException

注意

如果收到 ,IOException检查 属性InnerException来确定它是否由 SocketException引起。 如果是这样,请使用 ErrorCode 属性获取特定的错误代码,并参阅 Windows 套接字版本 2 API 错误代码文档以获取错误的详细说明。

此方法将存储在任务中,它返回该方法的同步对应项可能引发的所有非使用异常。 如果异常存储在返回的任务中,则在等待任务时将引发该异常。 使用异常(如 ArgumentException)仍会同步引发。 有关存储的异常,请参阅 引发的 Write(Byte[], Int32, Int32)异常。

适用于