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


Socket.EndSendFile(IAsyncResult) Метод

Определение

Завершает ожидающий асинхронный отправку файла.

public:
 void EndSendFile(IAsyncResult ^ asyncResult);
public void EndSendFile(IAsyncResult asyncResult);
member this.EndSendFile : IAsyncResult -> unit
Public Sub EndSendFile (asyncResult As IAsyncResult)

Параметры

asyncResult
IAsyncResult

Объект IAsyncResult , в который хранятся сведения о состоянии для этой асинхронной операции.

Исключения

Только .NET 8+ — сокет не подключен к удаленному узлу.

Только .NET Framework, .NET Core и .NET 5-6: он Socket закрыт.

asyncResult значение пусто.

asyncResult не возвращается вызовом BeginSendFile(String, AsyncCallback, Object) метода.

EndSendFile(IAsyncResult) ранее был вызван для асинхронного BeginSendFile(String, AsyncCallback, Object).

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

–или–

Только .NET 7+ — закрыт Socket .

Комментарии

Это важно

Это API совместимости. Мы не рекомендуем использовать методы APM (Begin* и End*) для новой разработки. Вместо этого используйте Taskэквиваленты на основе.

EndSendFile завершает операцию, запущенную BeginSend. Необходимо передать IAsyncResult созданный вызов сопоставления BeginSend .

Если вы используете протокол без подключения, EndSendFile блокируются до отправки диаграммы данных. Если используется протокол, ориентированный на подключение, EndSendFile блокируется до отправки всего файла. Нет никаких гарантий, что отправляемые данные будут отображаться в сети немедленно. Чтобы повысить эффективность сети, базовая система может отложить передачу, пока не будет собран значительный объем исходящих данных. Успешное BeginSendFile завершение метода означает, что базовая система имела место для буферизации данных для отправки сетей.

Замечание

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

Замечание

Этот элемент выводит сведения о трассировке при включении трассировки сети в приложении. Дополнительные сведения см. в разделе "Трассировка сети" в .NET Framework.

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