Compartir a través de


UdpClient.SendAsync Método

Definición

Envía un datagrama UDP a un host remoto de forma asincrónica.

Sobrecargas

SendAsync(Byte[], Int32)

Envía un datagrama UDP a un host remoto de forma asincrónica.

SendAsync(ReadOnlyMemory<Byte>, CancellationToken)

Envía un datagrama UDP a un host remoto de forma asincrónica.

SendAsync(Byte[], Int32, IPEndPoint)

Envía un datagrama UDP a un host remoto de forma asincrónica.

SendAsync(ReadOnlyMemory<Byte>, IPEndPoint, CancellationToken)

Envía un datagrama UDP a un host remoto de forma asincrónica.

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

Envía un datagrama UDP a un host remoto de forma asincrónica.

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

Envía un datagrama UDP a un host remoto de forma asincrónica.

SendAsync(Byte[], Int32)

Source:
UDPClient.cs
Source:
UDPClient.cs
Source:
UDPClient.cs

Envía un datagrama UDP a un host remoto de forma asincrónica.

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[]

Matriz de tipo Byte que especifica el datagrama UDP que quiere enviar, representado como una matriz de bytes.

bytes
Int32

Número de bytes del datagrama.

Devoluciones

Devuelve Task<TResult>.

Excepciones

dgram es null.

La clase UdpClient ya estableció un host remoto predeterminado.

La clase UdpClient está cerrada.

Se produjo un error al acceder al socket.

Comentarios

Esta sobrecarga envía datagramas al host remoto establecido en el Connect método . Si no llama a antes de llamar a Connect esta sobrecarga, el método iniciará una SocketExceptionexcepción . Si recibe un SocketException, use SocketException.ErrorCode para obtener el código de error específico. Una vez que haya obtenido este código, puede consultar la documentación del código de error de la API de Windows Sockets versión 2 para obtener una descripción detallada del error.

Si desea enviar datagramas a otro host remoto, debe llamar al Connect método y especificar el host remoto deseado. Use cualquiera de las demás SendAsync sobrecargas de método para enviar datagramas a una dirección de difusión.

Este método almacena en la tarea que devuelve todas las excepciones que no son de uso que puede producir el homólogo sincrónico del método. Si se almacena una excepción en la tarea devuelta, se producirá esa excepción cuando se espere la tarea. Las excepciones de uso, como ArgumentException, se siguen iniciando de forma sincrónica. Para ver las excepciones almacenadas, consulte las excepciones producidas por Send(Byte[], Int32).

Se aplica a

SendAsync(ReadOnlyMemory<Byte>, CancellationToken)

Source:
UDPClient.cs
Source:
UDPClient.cs
Source:
UDPClient.cs

Envía un datagrama UDP a un host remoto de forma asincrónica.

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>

De ReadOnlyMemory<T> tipo Byte que especifica el datagrama UDP que desea enviar.

cancellationToken
CancellationToken

Token para supervisar solicitudes de cancelación. El valor predeterminado es Ninguno.

Devoluciones

que ValueTask<TResult> representa la operación de envío asincrónica. El valor de su propiedad Result contiene el número de bytes enviados.

Excepciones

La clase UdpClient está cerrada.

Se produjo un error al acceder al socket.

Se canceló el token de cancelación. Esta excepción se almacena en la tarea devuelta.

Se aplica a

SendAsync(Byte[], Int32, IPEndPoint)

Source:
UDPClient.cs
Source:
UDPClient.cs
Source:
UDPClient.cs

Envía un datagrama UDP a un host remoto de forma asincrónica.

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[]

Matriz de tipo Byte que especifica el datagrama UDP que quiere enviar, representado como una matriz de bytes.

bytes
Int32

Número de bytes del datagrama.

endPoint
IPEndPoint

IPEndPoint que representa el host y el puerto al que se va a enviar el datagrama.

Devoluciones

Devuelve Task<TResult>.

Excepciones

dgram es null.

UdpClient ya ha establecido un host remoto predeterminado.

Se produjo un error al acceder al socket.

Comentarios

Este método envía datagramas al punto de conexión especificado. Antes de llamar a esta sobrecarga, primero debe crear un IPEndPoint mediante la dirección IP y el número de puerto del host remoto al que se entregarán los datagramas. Puede enviar datagramas a la dirección de difusión predeterminada, 255.255.255.255, especificando SocketOptionName.Broadcast para la Address propiedad de IPEndPoint. Después de crear este IPEndPoint, páselo a este método como parámetro endPoint .

Si desea enviar datagramas a cualquier otra dirección de difusión, use el Client método para obtener el subyacente Sockety establezca la opción de socket en SocketOptionName.Broadcast. También puede revertir al uso de la Socket clase .

Advertencia

No proporcione un endPoint parámetro a este método si ya ha establecido un host remoto con el Connect método . Si lo hace, este método iniciará una SocketExceptionexcepción . Si recibe un SocketException, use SocketException.ErrorCode para obtener el código de error específico. Una vez que haya obtenido este código, puede consultar la documentación del código de error de la API de Windows Sockets versión 2 para obtener una descripción detallada del error.

Este método almacena en la tarea que devuelve todas las excepciones que no son de uso que puede producir el homólogo sincrónico del método. Si se almacena una excepción en la tarea devuelta, se producirá esa excepción cuando se espere la tarea. Las excepciones de uso, como ArgumentException, se siguen iniciando de forma sincrónica. Para ver las excepciones almacenadas, consulte las excepciones producidas por Send(Byte[], Int32, IPEndPoint).

Se aplica a

SendAsync(ReadOnlyMemory<Byte>, IPEndPoint, CancellationToken)

Source:
UDPClient.cs
Source:
UDPClient.cs
Source:
UDPClient.cs

Envía un datagrama UDP a un host remoto de forma asincrónica.

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>

De ReadOnlyMemory<T> tipo Byte que especifica el datagrama UDP que desea enviar.

endPoint
IPEndPoint

IPEndPoint que representa el host y el puerto al que se va a enviar el datagrama.

cancellationToken
CancellationToken

Token para supervisar solicitudes de cancelación. El valor predeterminado es Ninguno.

Devoluciones

que ValueTask<TResult> representa la operación de envío asincrónica. El valor de su propiedad Result contiene el número de bytes enviados.

Excepciones

UdpClient ya ha establecido un host remoto predeterminado y endPoint no nulles .

La clase UdpClient está cerrada.

Se produjo un error al acceder al socket.

Se canceló el token de cancelación. Esta excepción se almacena en la tarea devuelta.

Se aplica a

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

Source:
UDPClient.cs
Source:
UDPClient.cs
Source:
UDPClient.cs

Envía un datagrama UDP a un host remoto de forma asincrónica.

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[]

Matriz de tipo Byte que especifica el datagrama UDP que quiere enviar, representado como una matriz de bytes.

bytes
Int32

Número de bytes del datagrama.

hostname
String

Nombre del host remoto al que pretende enviar el datagrama.

port
Int32

Número de puerto remoto con el que quiere comunicarse.

Devoluciones

Devuelve Task<TResult>.

Excepciones

dgram es null.

La clase UdpClient ya estableció un host remoto predeterminado.

La clase UdpClient está cerrada.

Se produjo un error al acceder al socket.

Comentarios

Este método envía datagramas a los valores especificados por los hostname parámetros y port . Puede enviar datagramas a la dirección de difusión predeterminada especificando "255.255.255.255" para el valor del hostname parámetro.

Si desea enviar datagramas a cualquier otra dirección de difusión, use el Client método para obtener el subyacente Sockety establezca la opción de socket en SocketOptionName.Broadcast. También puede revertir al uso de la Socket clase .

Advertencia

No proporcione un nombre de host o un número de puerto a este método si ya ha establecido un host remoto con el Connect método . Si lo hace, este método iniciará una SocketExceptionexcepción . Si recibe un SocketException, use SocketException.ErrorCode para obtener el código de error específico. Una vez que haya obtenido este código, puede consultar la documentación del código de error de la API de Windows Sockets versión 2 para obtener una descripción detallada del error.

Este método almacena en la tarea que devuelve todas las excepciones que no son de uso que puede producir el homólogo sincrónico del método. Si se almacena una excepción en la tarea devuelta, se producirá esa excepción cuando se espere la tarea. Las excepciones de uso, como ArgumentException, se siguen iniciando de forma sincrónica. Para ver las excepciones almacenadas, consulte las excepciones producidas por Send(Byte[], Int32, String, Int32).

Se aplica a

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

Source:
UDPClient.cs
Source:
UDPClient.cs
Source:
UDPClient.cs

Envía un datagrama UDP a un host remoto de forma asincrónica.

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>

de ReadOnlyMemory<T> tipo Byte que especifica el datagrama UDP que se va a enviar.

hostname
String

Nombre del host remoto al que pretende enviar el datagrama.

port
Int32

Número de puerto remoto con el que quiere comunicarse.

cancellationToken
CancellationToken

Token para supervisar solicitudes de cancelación. El valor predeterminado es Ninguno.

Devoluciones

que ValueTask<TResult> representa la operación de envío asincrónica. El valor de su propiedad Result contiene el número de bytes enviados.

Excepciones

La clase UdpClient ya estableció un host remoto predeterminado.

La clase UdpClient está cerrada.

Se produjo un error al acceder al socket.

Se canceló el token de cancelación. Esta excepción se almacena en la tarea devuelta.

Se aplica a