Socket.DisconnectAsync Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Перегрузки
DisconnectAsync(SocketAsyncEventArgs) |
Начинает выполнение асинхронного запроса для отключения от удаленной конечной точки. |
DisconnectAsync(Boolean, CancellationToken) |
Отключает подключенный сокет от удаленного узла. |
DisconnectAsync(SocketAsyncEventArgs)
- Исходный код:
- Socket.cs
- Исходный код:
- Socket.cs
- Исходный код:
- Socket.cs
Начинает выполнение асинхронного запроса для отключения от удаленной конечной точки.
public:
bool DisconnectAsync(System::Net::Sockets::SocketAsyncEventArgs ^ e);
public bool DisconnectAsync (System.Net.Sockets.SocketAsyncEventArgs e);
member this.DisconnectAsync : System.Net.Sockets.SocketAsyncEventArgs -> bool
Public Function DisconnectAsync (e As SocketAsyncEventArgs) As Boolean
Параметры
Объект SocketAsyncEventArgs для использования в данной асинхронной операции сокета.
Возвращаемое значение
true
, если операция ввода-вывода находится в состоянии ожидания. По завершении операции создается событие Completed в параметре e
.
false
, если операция ввода-вывода завершена синхронно. В данном случае событие Completed на параметре e
не будет создано и объект e
, передаваемый как параметр, можно изучить сразу после получения результатов вызова метода для извлечения результатов операции.
Исключения
Параметр e
не может иметь значение null.
Операция сокета уже выполнялась с использованием объекта SocketAsyncEventArgs, указанного в параметре e
.
Socket был закрыт.
Произошла ошибка при попытке доступа к сокету.
Комментарии
При использовании протокола, ориентированного на подключение, вызов DisconnectAsync метода запрашивает отключение от удаленной конечной точки. Если в параметре e
задано SocketAsyncEventArgs.DisconnectReuseSocket значение , true
сокет можно использовать повторно.
См. также раздел
Применяется к
DisconnectAsync(Boolean, CancellationToken)
- Исходный код:
- Socket.Tasks.cs
- Исходный код:
- Socket.Tasks.cs
- Исходный код:
- Socket.Tasks.cs
Отключает подключенный сокет от удаленного узла.
public System.Threading.Tasks.ValueTask DisconnectAsync (bool reuseSocket, System.Threading.CancellationToken cancellationToken = default);
member this.DisconnectAsync : bool * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask
Public Function DisconnectAsync (reuseSocket As Boolean, Optional cancellationToken As CancellationToken = Nothing) As ValueTask
Параметры
- reuseSocket
- Boolean
Указывает, должен ли сокет быть доступен для повторного использования после отключения.
- cancellationToken
- CancellationToken
Маркер отмены, который можно использовать для отмены асинхронной операции.
Возвращаемое значение
Асинхронная задача, которая завершается при отключении сокета.
Исключения
Объект Socket закрыт.
Произошла ошибка при попытке доступа к сокету.
Маркер отмены был отменен. Это исключение сохраняется в возвращаемой задаче.
Комментарии
Этот метод сохраняет в задаче все исключения, не относящиеся к использованию, которые может создавать синхронный аналог метода. Если исключение сохраняется в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему создаются синхронно. Хранимые исключения см. в разделе исключения, создаваемые Disconnect(Boolean).