UdpClient.SendAsync 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将 UDP 数据报异步发送到远程主机。
重载
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)
- Source:
- UDPClient.cs
- Source:
- UDPClient.cs
- Source:
- 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)
参数
- bytes
- Int32
数据报中的字节数。
返回
返回 Task<TResult>。
例外
dgram
为 null
。
UdpClient 已建立默认远程主机。
访问套接字时出错。
注解
此重载将数据报发送到在 方法中建立的 Connect 远程主机。 如果在调用此重载之前未调用 Connect ,该方法将引发 SocketException。 如果收到 SocketException,请使用 SocketException.ErrorCode 获取特定的错误代码。 获取此代码后,可以参阅 Windows 套接字版本 2 API 错误代码 文档,获取错误的详细说明。
如果要将数据报发送到其他远程主机,则必须调用 Connect 方法并指定所需的远程主机。 使用其他 SendAsync 任一方法重载将数据报发送到广播地址。
此方法将存储在任务中,它返回该方法的同步对应项可能引发的所有非使用异常。 如果异常存储在返回的任务中,则在等待任务时将引发该异常。 使用异常(如 ArgumentException)仍会同步引发。 有关存储的异常,请参阅 引发的 Send(Byte[], Int32)异常。
适用于
SendAsync(ReadOnlyMemory<Byte>, CancellationToken)
- Source:
- UDPClient.cs
- Source:
- UDPClient.cs
- Source:
- 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>
类型Byte为 的 ,ReadOnlyMemory<T>指定要发送的 UDP 数据报。
- cancellationToken
- CancellationToken
要监视取消请求的标记。 默认值为 None。
返回
表示 ValueTask<TResult> 异步发送操作的 。 其 Result 属性的值包含发送的字节数。
例外
访问套接字时出错。
取消令牌已取消。 此异常存储在返回的任务中。
适用于
SendAsync(Byte[], Int32, IPEndPoint)
- Source:
- UDPClient.cs
- Source:
- UDPClient.cs
- Source:
- 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)
参数
- bytes
- Int32
数据报中的字节数。
- endPoint
- IPEndPoint
一个 IPEndPoint,表示要将数据报发送到的主机和端口。
返回
返回 Task<TResult>。
例外
dgram
为 null
。
UdpClient 已建立默认远程主机。
访问套接字时出错。
注解
此方法将数据报发送到指定的终结点。 在调用此重载之前,必须先使用数据报将传送到的远程主机的 IP 地址和端口号创建 IPEndPoint 。 可以通过指定 SocketOptionName.Broadcast 的 Address 属性 IPEndPoint,将数据报发送到默认广播地址 255.255.255.255。 创建此 IPEndPoint后,将其作为 endPoint
参数传递给此方法。
如果要将数据报发送到任何其他广播地址,请使用 Client 方法获取基础 Socket,并将套接字选项设置为 SocketOptionName.Broadcast。 还可以还原使用 Socket 类。
警告
如果已使用 Connect 方法建立了远程主机,请不要为此方法提供endPoint
参数。 如果这样做,此方法将引发 SocketException。 如果收到 SocketException,请使用 SocketException.ErrorCode 获取特定的错误代码。 获取此代码后,可以参阅 Windows 套接字版本 2 API 错误代码 文档,获取错误的详细说明。
此方法将存储在任务中,它返回该方法的同步对应项可能引发的所有非使用异常。 如果异常存储在返回的任务中,则在等待任务时将引发该异常。 使用异常(如 ArgumentException)仍会同步引发。 有关存储的异常,请参阅 引发的 Send(Byte[], Int32, IPEndPoint)异常。
适用于
SendAsync(ReadOnlyMemory<Byte>, IPEndPoint, CancellationToken)
- Source:
- UDPClient.cs
- Source:
- UDPClient.cs
- Source:
- 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>
类型Byte为 的 ,ReadOnlyMemory<T>指定要发送的 UDP 数据报。
- endPoint
- IPEndPoint
一个 IPEndPoint,表示要将数据报发送到的主机和端口。
- cancellationToken
- CancellationToken
要监视取消请求的标记。 默认值为 None。
返回
表示 ValueTask<TResult> 异步发送操作的 。 其 Result 属性的值包含发送的字节数。
例外
UdpClient 已建立默认远程主机,并且 endPoint
不是 null
。
访问套接字时出错。
取消令牌已取消。 此异常存储在返回的任务中。
适用于
SendAsync(Byte[], Int32, String, Int32)
- Source:
- UDPClient.cs
- Source:
- UDPClient.cs
- Source:
- 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)
参数
- bytes
- Int32
数据报中的字节数。
- hostname
- String
要向其发送数据报的远程主机的名称。
- port
- Int32
要与之通信的远程端口号。
返回
返回 Task<TResult>。
例外
dgram
为 null
。
UdpClient 已建立默认远程主机。
访问套接字时出错。
注解
此方法将数据报发送到 和 port
参数指定的hostname
值。 可以通过为参数值指定“255.255.255.255” hostname
,将数据报发送到默认广播地址。
如果要将数据报发送到任何其他广播地址,请使用 Client 方法获取基础 Socket,并将套接字选项设置为 SocketOptionName.Broadcast。 还可以还原使用 Socket 类。
警告
如果已使用 Connect 方法建立了远程主机,请不要向此方法提供主机名或端口号。 如果这样做,此方法将引发 SocketException。 如果收到 SocketException,请使用 SocketException.ErrorCode 获取特定的错误代码。 获取此代码后,可以参阅 Windows 套接字版本 2 API 错误代码 文档,获取错误的详细说明。
此方法将存储在任务中,它返回该方法的同步对应项可能引发的所有非使用异常。 如果异常存储在返回的任务中,则在等待任务时将引发该异常。 使用异常(如 ArgumentException)仍会同步引发。 有关存储的异常,请参阅 引发的 Send(Byte[], Int32, String, Int32)异常。
适用于
SendAsync(ReadOnlyMemory<Byte>, String, Int32, CancellationToken)
- Source:
- UDPClient.cs
- Source:
- UDPClient.cs
- Source:
- 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>
类型的 Byte ,ReadOnlyMemory<T>指定要发送的 UDP 数据报。
- hostname
- String
要向其发送数据报的远程主机的名称。
- port
- Int32
要与之通信的远程端口号。
- cancellationToken
- CancellationToken
要监视取消请求的标记。 默认值为 None。
返回
一个 ValueTask<TResult> ,它表示异步发送操作。 其 Result 属性的值包含发送的字节数。
例外
UdpClient 已建立默认远程主机。
访问套接字时出错。
取消令牌已取消。 此异常存储在返回的任务中。