Поделиться через


UdpClient.SendAsync Метод

Определение

Асинхронно отправляет диаграмму данных 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)

Исходный код:
UDPClient.cs
Исходный код:
UDPClient.cs
Исходный код:
UDPClient.cs
Исходный код:
UDPClient.cs
Исходный код:
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)

Параметры

datagram
Byte[]

Массив типа Byte , указывающий диаграмму данных UDP, которую планируется отправить в виде массива байтов.

bytes
Int32

Количество байтов в диаграмме данных.

Возвращаемое значение

Возвращает Task<TResult>.

Исключения

datagram равно null.

Уже UdpClient установлен удаленный узел по умолчанию.

При доступе к сокету произошла ошибка.

Комментарии

Эта перегрузка отправляет диаграммы данных удаленному узлу, установленному в методе Connect . Если перед вызовом SocketExceptionэтой перегрузки не вызываетсяConnect, метод вызовет исключение. Если вы получаете SocketExceptionкод ошибки, используйте SocketException.ErrorCode для получения определенного кода ошибки. Получив этот код, вы можете обратиться к документации по коду ошибки API для сокетов Windows версии 2 для подробного описания ошибки.

Если вы хотите отправить диаграммы данных другому удаленному узлу, необходимо вызвать Connect метод и указать нужный удаленный узел. Используйте любой из других SendAsync перегрузок методов для отправки данных на широковещательный адрес.

Этот метод сохраняет в задаче все исключения без использования, которые может вызывать синхронный аналог метода. Если исключение хранится в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему выбрасываются синхронно. Сведения о сохраненных исключениях см. в исключениях, создаваемых Send(Byte[], Int32).

Применяется к

SendAsync(ReadOnlyMemory<Byte>, CancellationToken)

Исходный код:
UDPClient.cs
Исходный код:
UDPClient.cs
Исходный код:
UDPClient.cs
Исходный код:
UDPClient.cs
Исходный код:
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>

Тип ReadOnlyMemory<T> , указывающий Byte диаграмму данных UDP, которую вы планируете отправить.

cancellationToken
CancellationToken

Маркер для отслеживания запросов на отмену. Значение по умолчанию — None.

Возвращаемое значение

Объект, ValueTask<TResult> представляющий асинхронную операцию отправки. Значение свойства Result содержит количество отправленных байтов.

Исключения

При доступе к сокету произошла ошибка.

Маркер отмены был отменен. Это исключение хранится в возвращаемой задаче.

Применяется к

SendAsync(Byte[], Int32, IPEndPoint)

Исходный код:
UDPClient.cs
Исходный код:
UDPClient.cs
Исходный код:
UDPClient.cs
Исходный код:
UDPClient.cs
Исходный код:
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)

Параметры

datagram
Byte[]

Массив типа Byte , указывающий диаграмму данных UDP, которую планируется отправить в виде массива байтов.

bytes
Int32

Количество байтов в диаграмме данных.

endPoint
IPEndPoint

Объект IPEndPoint , представляющий узел и порт, на который отправляется диаграмма данных.

Возвращаемое значение

Возвращает Task<TResult>.

Исключения

datagram равно null.

UdpClient уже установил удаленный узел по умолчанию.

При доступе к сокету произошла ошибка.

Комментарии

Этот метод отправляет диаграммы данных в указанную конечную точку. Перед вызовом этой перегрузки необходимо сначала создать IPEndPoint с помощью IP-адреса и номера порта удаленного узла, в который будут доставлены диаграммы данных. Вы можете отправлять диаграммы данных по умолчанию в адрес широковещательной трансляции 255.255.255, указав SocketOptionName.Broadcast для Address свойства объекта IPEndPoint. После создания этого IPEndPointметода передайте его в качестве endPoint параметра.

Если вы хотите отправить диаграммы данных в любой другой широковещательный адрес, используйте Client метод для получения базового Socketобъекта и задайте для параметра сокета значение SocketOptionName.Broadcast. Вы также можете вернуться к использованию Socket класса.

Предупреждение

Не предоставляйте параметр этому методу endPoint , если вы уже установили удаленный узел с методом Connect . Если это сделать, этот метод вызовет SocketExceptionисключение. Если вы получаете SocketExceptionкод ошибки, используйте SocketException.ErrorCode для получения определенного кода ошибки. Получив этот код, вы можете обратиться к документации по коду ошибки API для сокетов Windows версии 2 для подробного описания ошибки.

Этот метод сохраняет в задаче все исключения без использования, которые может вызывать синхронный аналог метода. Если исключение хранится в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему выбрасываются синхронно. Сведения о сохраненных исключениях см. в исключениях, создаваемых Send(Byte[], Int32, IPEndPoint).

Применяется к

SendAsync(ReadOnlyMemory<Byte>, IPEndPoint, CancellationToken)

Исходный код:
UDPClient.cs
Исходный код:
UDPClient.cs
Исходный код:
UDPClient.cs
Исходный код:
UDPClient.cs
Исходный код:
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>

Тип ReadOnlyMemory<T> , указывающий Byte диаграмму данных UDP, которую вы планируете отправить.

endPoint
IPEndPoint

Объект IPEndPoint , представляющий узел и порт, на который отправляется диаграмма данных.

cancellationToken
CancellationToken

Маркер для отслеживания запросов на отмену. Значение по умолчанию — None.

Возвращаемое значение

Объект, ValueTask<TResult> представляющий асинхронную операцию отправки. Значение свойства Result содержит количество отправленных байтов.

Исключения

UdpClient уже установил удаленный узел по умолчанию и endPoint не nullявляется.

При доступе к сокету произошла ошибка.

Маркер отмены был отменен. Это исключение хранится в возвращаемой задаче.

Применяется к

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

Исходный код:
UDPClient.cs
Исходный код:
UDPClient.cs
Исходный код:
UDPClient.cs
Исходный код:
UDPClient.cs
Исходный код:
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)

Параметры

datagram
Byte[]

Массив типа Byte , указывающий диаграмму данных UDP, которую планируется отправить в виде массива байтов.

bytes
Int32

Количество байтов в диаграмме данных.

hostname
String

Имя удаленного узла, на который планируется отправить диаграмму данных.

port
Int32

Номер удаленного порта, с которым вы планируете взаимодействовать.

Возвращаемое значение

Возвращает Task<TResult>.

Исключения

datagram равно null.

Уже UdpClient установлен удаленный узел по умолчанию.

При доступе к сокету произошла ошибка.

Комментарии

Этот метод отправляет диаграммы данных значениям, указанным в hostname параметрах и port параметрах. Вы можете отправлять диаграммы данных на адрес трансляции по умолчанию, указав значение hostname параметра 255.255.255.255.

Если вы хотите отправить диаграммы данных в любой другой широковещательный адрес, используйте Client метод для получения базового Socketобъекта и задайте для параметра сокета значение SocketOptionName.Broadcast. Вы также можете вернуться к использованию Socket класса.

Предупреждение

Не указывайте имя узла или номер порта для этого метода, если вы уже установили удаленный узел с методом Connect . Если это сделать, этот метод вызовет SocketExceptionисключение. Если вы получаете SocketExceptionкод ошибки, используйте SocketException.ErrorCode для получения определенного кода ошибки. Получив этот код, вы можете обратиться к документации по коду ошибки API для сокетов Windows версии 2 для подробного описания ошибки.

Этот метод сохраняет в задаче все исключения без использования, которые может вызывать синхронный аналог метода. Если исключение хранится в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему выбрасываются синхронно. Сведения о сохраненных исключениях см. в исключениях, создаваемых Send(Byte[], Int32, String, Int32).

Применяется к

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

Исходный код:
UDPClient.cs
Исходный код:
UDPClient.cs
Исходный код:
UDPClient.cs
Исходный код:
UDPClient.cs
Исходный код:
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>

Тип ReadOnlyMemory<T> , указывающий Byte диаграмму данных UDP, которую вы планируете отправить.

hostname
String

Имя удаленного узла, на который планируется отправить диаграмму данных.

port
Int32

Номер удаленного порта, с которым вы планируете взаимодействовать.

cancellationToken
CancellationToken

Маркер для отслеживания запросов на отмену. Значение по умолчанию — None.

Возвращаемое значение

Объект, ValueTask<TResult> представляющий асинхронную операцию отправки. Значение свойства Result содержит количество отправленных байтов.

Исключения

Уже UdpClient установлен удаленный узел по умолчанию.

При доступе к сокету произошла ошибка.

Маркер отмены был отменен. Это исключение хранится в возвращаемой задаче.

Применяется к