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


TcpListener.AcceptSocketAsync Метод

Определение

Перегрузки

AcceptSocketAsync()

Принимает запрос ожидающего подключения как асинхронную операцию.

AcceptSocketAsync(CancellationToken)

Принимает ожидающий запрос на подключение в качестве отменяемой асинхронной операции.

AcceptSocketAsync()

Исходный код:
TCPListener.cs
Исходный код:
TCPListener.cs
Исходный код:
TCPListener.cs

Принимает запрос ожидающего подключения как асинхронную операцию.

public:
 System::Threading::Tasks::Task<System::Net::Sockets::Socket ^> ^ AcceptSocketAsync();
public System.Threading.Tasks.Task<System.Net.Sockets.Socket> AcceptSocketAsync ();
member this.AcceptSocketAsync : unit -> System.Threading.Tasks.Task<System.Net.Sockets.Socket>
Public Function AcceptSocketAsync () As Task(Of Socket)

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

Объект задачи, представляющий асинхронную операцию. Свойство Result в объекте задачи возвращает Socket, используемый для отправки и получения данных.

Исключения

Слушатель не запущен с помощью вызова метода Start().

Комментарии

Эта операция не блокируется. Возвращенный Task<TResult> объект завершится после того, как подключение сокета будет принято.

Объект , Socket возвращаемый в Task<TResult> , инициализируется IP-адресом и номером порта удаленного узла. Можно использовать любой из Send и Receive методы, доступные в Socket класс для взаимодействия с удаленным узлом. При завершении работы с помощью Socket, необходимо вызвать его Close метод. Если приложение является относительно простым, рассмотрите возможность использования AcceptTcpClient метод вместо AcceptSocketAsync метод. TcpClient предоставляет простые методы для отправки и получения данных по сети в синхронном режиме блокировки.

Примечание

Данный член генерирует сведения трассировки, если в приложении включена трассировка сети. Дополнительные сведения см. в разделе Трассировка сети в платформа .NET Framework.

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

См. также раздел

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

AcceptSocketAsync(CancellationToken)

Исходный код:
TCPListener.cs
Исходный код:
TCPListener.cs
Исходный код:
TCPListener.cs

Принимает ожидающий запрос на подключение в качестве отменяемой асинхронной операции.

public:
 System::Threading::Tasks::ValueTask<System::Net::Sockets::Socket ^> AcceptSocketAsync(System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.ValueTask<System.Net.Sockets.Socket> AcceptSocketAsync (System.Threading.CancellationToken cancellationToken);
member this.AcceptSocketAsync : System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<System.Net.Sockets.Socket>
Public Function AcceptSocketAsync (cancellationToken As CancellationToken) As ValueTask(Of Socket)

Параметры

cancellationToken
CancellationToken

Маркер отмены, который можно использовать для отмены асинхронной операции.

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

Объект задачи, представляющий асинхронную операцию. Свойство Result в объекте задачи возвращает Socket, используемый для отправки и получения данных.

Исключения

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

Комментарии

Эта операция не блокируется. Возвращенный Task<TResult> объект завершится после того, как подключение сокета будет принято.

Объект , Socket возвращаемый в Task<TResult> , инициализируется IP-адресом и номером порта удаленного узла. Можно использовать любой из Send и Receive методы, доступные в Socket класс для взаимодействия с удаленным узлом. При завершении работы с помощью Socket, необходимо вызвать его Close метод. Если приложение является относительно простым, рассмотрите возможность использования AcceptTcpClient метод вместо AcceptSocketAsync метод. TcpClient предоставляет простые методы для отправки и получения данных по сети в синхронном режиме блокировки.

Примечание

Данный член генерирует сведения трассировки, если в приложении включена трассировка сети. Дополнительные сведения см. в разделе Трассировка сети в платформа .NET Framework.

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

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