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


TcpListener.AcceptTcpClientAsync Метод

Определение

Перегрузки

AcceptTcpClientAsync()

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

AcceptTcpClientAsync(CancellationToken)

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

AcceptTcpClientAsync()

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

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

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

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

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

Исключения

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

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

Комментарии

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

Используйте метод для TcpClient.GetStream получения базового NetworkStream объекта , возвращаемого TcpClientTask<TResult>в . Будет NetworkStream предоставлять методы для отправки и получения с удаленным узлом. При выполнении TcpClientс помощью обязательно вызовите его Close метод . Если требуется больше гибкости, чем TcpClient предложения, рассмотрите возможность использования AcceptSocket или AcceptSocketAsync.

Примечание

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

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

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

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

AcceptTcpClientAsync(CancellationToken)

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

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

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

Параметры

cancellationToken
CancellationToken

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

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

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

Исключения

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

Комментарии

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

Используйте метод для TcpClient.GetStream получения базового NetworkStream объекта , возвращаемого TcpClientTask<TResult>в . Будет NetworkStream предоставлять методы для отправки и получения с удаленным узлом. При выполнении TcpClientс помощью обязательно вызовите его Close метод . Если требуется больше гибкости, чем TcpClient предложения, рассмотрите возможность использования AcceptSocket или AcceptSocketAsync.

Примечание

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

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

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