Compartilhar via


UdpClient.SendAsync Método

Definição

Envia um datagrama UDP de maneira assíncrona para um host remoto.

Sobrecargas

SendAsync(Byte[], Int32)

Envia um datagrama UDP de maneira assíncrona para um host remoto.

SendAsync(ReadOnlyMemory<Byte>, CancellationToken)

Envia um datagrama UDP de maneira assíncrona para um host remoto.

SendAsync(Byte[], Int32, IPEndPoint)

Envia um datagrama UDP de maneira assíncrona para um host remoto.

SendAsync(ReadOnlyMemory<Byte>, IPEndPoint, CancellationToken)

Envia um datagrama UDP de maneira assíncrona para um host remoto.

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

Envia um datagrama UDP de maneira assíncrona para um host remoto.

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

Envia um datagrama UDP de maneira assíncrona para um host remoto.

SendAsync(Byte[], Int32)

Origem:
UDPClient.cs
Origem:
UDPClient.cs
Origem:
UDPClient.cs

Envia um datagrama UDP de maneira assíncrona para um host remoto.

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)

Parâmetros

datagram
Byte[]

Uma matriz do tipo Byte que especifica o datagrama UDP que você pretende enviar, representado como uma matriz de bytes.

bytes
Int32

O número de bytes no datagrama.

Retornos

Retorna Task<TResult>.

Exceções

dgram é null.

O UdpClient já estabeleceu um host remoto padrão.

Ocorreu um erro ao acessar o soquete.

Comentários

Essa sobrecarga envia datagramas para o host remoto estabelecido no Connect método . Se você não chamar Connect antes de chamar essa sobrecarga, o método gerará um SocketException. Se você receber um SocketException, use SocketException.ErrorCode para obter o código de erro específico. Depois de obter esse código, você pode consultar a documentação do código de erro da API do Windows Sockets versão 2 para obter uma descrição detalhada do erro.

Se você quiser enviar datagramas para um host remoto diferente, chame o Connect método e especifique o host remoto desejado. Use qualquer uma das outras SendAsync sobrecargas de método para enviar datagramas para um endereço de difusão.

Esse método armazena na tarefa que retorna todas as exceções de não uso que a contraparte síncrona do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por Send(Byte[], Int32).

Aplica-se a

SendAsync(ReadOnlyMemory<Byte>, CancellationToken)

Origem:
UDPClient.cs
Origem:
UDPClient.cs
Origem:
UDPClient.cs

Envia um datagrama UDP de maneira assíncrona para um host remoto.

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)

Parâmetros

datagram
ReadOnlyMemory<Byte>

Um ReadOnlyMemory<T> de Tipo Byte que especifica o datagrama UDP que você pretende enviar.

cancellationToken
CancellationToken

O token a se monitorar para solicitações de cancelamento. O valor padrão é Nenhum.

Retornos

Um ValueTask<TResult> que representa a operação de envio assíncrona. O valor de sua propriedade Result contém o número de bytes enviados.

Exceções

Ocorreu um erro ao acessar o soquete.

O token de cancelamento foi cancelado. Essa exceção é armazenada na tarefa retornada.

Aplica-se a

SendAsync(Byte[], Int32, IPEndPoint)

Origem:
UDPClient.cs
Origem:
UDPClient.cs
Origem:
UDPClient.cs

Envia um datagrama UDP de maneira assíncrona para um host remoto.

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)

Parâmetros

datagram
Byte[]

Uma matriz do tipo Byte que especifica o datagrama UDP que você pretende enviar, representado como uma matriz de bytes.

bytes
Int32

O número de bytes no datagrama.

endPoint
IPEndPoint

Um IPEndPoint que representa o host e a porta para os quais o datagrama será enviado.

Retornos

Retorna Task<TResult>.

Exceções

dgram é null.

O UdpClient já estabeleceu um host remoto padrão.

Ocorreu um erro ao acessar o soquete.

Comentários

Esse método envia datagramas para o ponto de extremidade especificado. Antes de chamar essa sobrecarga, primeiro você deve criar um IPEndPoint usando o endereço IP e o número da porta do host remoto para o qual os datagramas serão entregues. Você pode enviar datagramas para o endereço de difusão padrão, 255.255.255.255, especificando SocketOptionName.Broadcast para a Address propriedade do IPEndPoint. Depois de criar esse IPEndPoint, passe-o para esse método como o endPoint parâmetro .

Se você quiser enviar datagramas para qualquer outro endereço de difusão, use o Client método para obter o subjacente Sockete defina a opção de soquete como SocketOptionName.Broadcast. Você também pode reverter usar a Socket classe .

Aviso

Não forneça um endPoint parâmetro para esse método se você já tiver estabelecido um host remoto com o Connect método . Se você fizer isso, esse método gerará um SocketException. Se você receber um SocketException, use SocketException.ErrorCode para obter o código de erro específico. Depois de obter esse código, você pode consultar a documentação do código de erro da API do Windows Sockets versão 2 para obter uma descrição detalhada do erro.

Esse método armazena na tarefa que retorna todas as exceções de não uso que a contraparte síncrona do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por Send(Byte[], Int32, IPEndPoint).

Aplica-se a

SendAsync(ReadOnlyMemory<Byte>, IPEndPoint, CancellationToken)

Origem:
UDPClient.cs
Origem:
UDPClient.cs
Origem:
UDPClient.cs

Envia um datagrama UDP de maneira assíncrona para um host remoto.

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)

Parâmetros

datagram
ReadOnlyMemory<Byte>

Um ReadOnlyMemory<T> de Tipo Byte que especifica o datagrama UDP que você pretende enviar.

endPoint
IPEndPoint

Um IPEndPoint que representa o host e a porta para os quais o datagrama será enviado.

cancellationToken
CancellationToken

O token a se monitorar para solicitações de cancelamento. O valor padrão é Nenhum.

Retornos

Um ValueTask<TResult> que representa a operação de envio assíncrona. O valor de sua propriedade Result contém o número de bytes enviados.

Exceções

UdpClient já estabeleceu um host remoto padrão e endPoint não nullé .

Ocorreu um erro ao acessar o soquete.

O token de cancelamento foi cancelado. Essa exceção é armazenada na tarefa retornada.

Aplica-se a

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

Origem:
UDPClient.cs
Origem:
UDPClient.cs
Origem:
UDPClient.cs

Envia um datagrama UDP de maneira assíncrona para um host remoto.

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)

Parâmetros

datagram
Byte[]

Uma matriz do tipo Byte que especifica o datagrama UDP que você pretende enviar, representado como uma matriz de bytes.

bytes
Int32

O número de bytes no datagrama.

hostname
String

O nome do host remoto para o qual você pretende enviar o datagrama.

port
Int32

O número da porta remota com a qual você pretende se comunicar.

Retornos

Retorna Task<TResult>.

Exceções

dgram é null.

O UdpClient já estabeleceu um host remoto padrão.

Ocorreu um erro ao acessar o soquete.

Comentários

Esse método envia datagramas para os valores especificados pelos hostname parâmetros e port . Você pode enviar datagramas para o endereço de difusão padrão especificando "255.255.255.255" para o valor do hostname parâmetro.

Se você quiser enviar datagramas para qualquer outro endereço de difusão, use o Client método para obter o subjacente Sockete defina a opção de soquete como SocketOptionName.Broadcast. Você também pode reverter usar a Socket classe .

Aviso

Não forneça um nome de host ou número da porta para esse método se você já tiver estabelecido um host remoto com o Connect método . Se você fizer isso, esse método gerará um SocketException. Se você receber um SocketException, use SocketException.ErrorCode para obter o código de erro específico. Depois de obter esse código, você pode consultar a documentação do código de erro da API do Windows Sockets versão 2 para obter uma descrição detalhada do erro.

Esse método armazena na tarefa que retorna todas as exceções de não uso que a contraparte síncrona do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por Send(Byte[], Int32, String, Int32).

Aplica-se a

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

Origem:
UDPClient.cs
Origem:
UDPClient.cs
Origem:
UDPClient.cs

Envia um datagrama UDP de maneira assíncrona para um host remoto.

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)

Parâmetros

datagram
ReadOnlyMemory<Byte>

Um ReadOnlyMemory<T> de Tipo Byte que especifica o datagrama UDP que você pretende enviar.

hostname
String

O nome do host remoto para o qual você pretende enviar o datagrama.

port
Int32

O número da porta remota com a qual você pretende se comunicar.

cancellationToken
CancellationToken

O token a se monitorar para solicitações de cancelamento. O valor padrão é Nenhum.

Retornos

Um ValueTask<TResult> que representa a operação de envio assíncrona. O valor de sua propriedade Result contém o número de bytes enviados.

Exceções

O UdpClient já estabeleceu um host remoto padrão.

Ocorreu um erro ao acessar o soquete.

O token de cancelamento foi cancelado. Essa exceção é armazenada na tarefa retornada.

Aplica-se a