Socket.EndSendTo(IAsyncResult) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Завершает ожидание асинхронной отправки в определенное расположение.
public:
int EndSendTo(IAsyncResult ^ asyncResult);
public int EndSendTo(IAsyncResult asyncResult);
member this.EndSendTo : IAsyncResult -> int
Public Function EndSendTo (asyncResult As IAsyncResult) As Integer
Параметры
- asyncResult
- IAsyncResult
Объект, IAsyncResult в который хранятся сведения о состоянии и все пользовательские данные для этой асинхронной операции.
Возвращаемое значение
В случае успешного выполнения число отправленных байтов; в противном случае недопустимая Socket ошибка.
Исключения
asyncResult равно null.
asyncResult не возвращается вызовом BeginSendTo(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object) метода.
EndSendTo(IAsyncResult) ранее был вызван для асинхронной отправки.
Только .NET Framework, .NET Core и .NET 5-6: он Socket закрыт.
Комментарии
Это важно
Это API совместимости. Мы не рекомендуем использовать методы APM (Begin* и End*) для новой разработки. Вместо этого используйте Taskэквиваленты на основе.
EndSendTo завершает операцию, запущенную BeginSendTo. Необходимо передать IAsyncResult созданный вызов сопоставления BeginSendTo .
Если вы используете протокол без подключения, EndSendTo будет блокироваться до отправки диаграммы данных. Если используется протокол, ориентированный на подключение, EndSendTo будет блокироваться до отправки запрошенного количества байтов. Нет никаких гарантий, что отправляемые данные будут отображаться в сети немедленно. Чтобы повысить эффективность сети, базовая система может отложить передачу, пока не будет собран значительный объем исходящих данных. Успешное BeginSendTo завершение метода означает, что базовая система имела место для буферизации данных для отправки сетей.
Замечание
При получении SocketExceptionсвойства используйте SocketException.ErrorCode свойство для получения определенного кода ошибки. Получив этот код, ознакомьтесь с документацией по коду ошибки API сокетов Windows версии 2 , чтобы получить подробное описание ошибки.
Замечание
Этот элемент выводит сведения о трассировке при включении трассировки сети в приложении. Дополнительные сведения см. в разделе "Трассировка сети" в .NET Framework.