TcpClient.ConnectAsync Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Подключает клиента к удаленному TCP-узлу, используя заданное имя узла и номер порта в асинхронной операции.
Перегрузки
ConnectAsync(String, Int32, CancellationToken) |
Подключает клиента к указанному TCP-порту заданного узла в асинхронной операции. |
ConnectAsync(IPAddress[], Int32, CancellationToken) |
Подключает клиента к удаленному TCP-узлу, используя заданные IP-адреса и номер порта в асинхронной операции. |
ConnectAsync(IPAddress, Int32, CancellationToken) |
Подключает клиента к удаленному TCP-узлу, используя заданный IP-адрес и номер порта в асинхронной операции. |
ConnectAsync(String, Int32) |
Подключает клиента к указанному TCP-порту заданного узла в асинхронной операции. |
ConnectAsync(IPEndPoint, CancellationToken) |
Подключает клиент к удаленному TCP-узлу, используя указанную конечную точку в качестве асинхронной операции. |
ConnectAsync(IPAddress[], Int32) |
Подключает клиента к удаленному TCP-узлу, используя заданные IP-адреса и номер порта в асинхронной операции. |
ConnectAsync(IPAddress, Int32) |
Подключает клиента к удаленному TCP-узлу, используя заданный IP-адрес и номер порта в асинхронной операции. |
ConnectAsync(IPEndPoint) |
Подключает клиент к удаленному TCP-узлу, используя указанную конечную точку в качестве асинхронной операции. |
ConnectAsync(String, Int32, CancellationToken)
- Исходный код:
- TCPClient.cs
- Исходный код:
- TCPClient.cs
- Исходный код:
- TCPClient.cs
Подключает клиента к указанному TCP-порту заданного узла в асинхронной операции.
public:
System::Threading::Tasks::ValueTask ConnectAsync(System::String ^ host, int port, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.ValueTask ConnectAsync (string host, int port, System.Threading.CancellationToken cancellationToken);
member this.ConnectAsync : string * int * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask
Public Function ConnectAsync (host As String, port As Integer, cancellationToken As CancellationToken) As ValueTask
Параметры
- host
- String
DNS-имя удаленного узла.
- port
- Int32
Номер порта удаленного узла.
- cancellationToken
- CancellationToken
Токен отмены, который может быть использован для указания на отмену асинхронной операции.
Возвращаемое значение
Задача, представляющая асинхронную операцию подключения.
Исключения
Параметр host
имеет значение null
.
Произошла ошибка при обращении к сокету.
TcpClient закрыт.
Маркер отмены был отменен. Это исключение сохраняется в возвращаемой задаче.
Комментарии
Эта операция не блокируется. Возвращаемая задача будет завершена после установки TCP-подключения. Этот метод не блокирует вызывающий поток во время выполнения запроса на подключение.
Вызовите этот метод, чтобы установить синхронное удаленное подключение к указанному имени узла и номеру порта в качестве асинхронной операции. После подключения к удаленному узлу используйте GetStream метод , чтобы получить базовый NetworkStream. Используйте его NetworkStream
для отправки и получения данных.
Если включен протокол IPv6 и ConnectAsync(String, Int32) вызывается метод для подключения к узлу, который разрешается в адреса IPv6 и IPv4, сначала будет предпринята попытка подключения к IPv6-адресу до IPv4-адреса. Это может привести к задержке времени установки подключения, если узел не прослушивает IPv6-адрес.
Примечание
Если вы получаете SocketException, используйте SocketException.ErrorCode для получения определенного кода ошибки. Получив этот код, вы можете обратиться к документации по коду ошибки API сокетов Windows версии 2 , чтобы получить подробное описание ошибки.
Примечание
Данный член генерирует сведения трассировки, если в приложении включена трассировка сети. Дополнительные сведения см. в разделе Трассировка сети в платформа .NET Framework.
Этот метод сохраняет в задаче все исключения, не относящиеся к использованию, которые может создавать синхронный аналог метода. Если исключение сохраняется в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему создаются синхронно. Хранимые исключения см. в разделе исключения, создаваемые Connect(String, Int32).
См. также раздел
Применяется к
ConnectAsync(IPAddress[], Int32, CancellationToken)
- Исходный код:
- TCPClient.cs
- Исходный код:
- TCPClient.cs
- Исходный код:
- TCPClient.cs
Подключает клиента к удаленному TCP-узлу, используя заданные IP-адреса и номер порта в асинхронной операции.
public:
System::Threading::Tasks::ValueTask ConnectAsync(cli::array <System::Net::IPAddress ^> ^ addresses, int port, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.ValueTask ConnectAsync (System.Net.IPAddress[] addresses, int port, System.Threading.CancellationToken cancellationToken);
member this.ConnectAsync : System.Net.IPAddress[] * int * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask
Public Function ConnectAsync (addresses As IPAddress(), port As Integer, cancellationToken As CancellationToken) As ValueTask
Параметры
- addresses
- IPAddress[]
Массив IP-адресов удаленного узла.
- port
- Int32
Номер порта удаленного узла.
- cancellationToken
- CancellationToken
Токен отмены, который может быть использован для указания на отмену асинхронной операции.
Возвращаемое значение
Задача, представляющая асинхронную операцию подключения.
Исключения
Параметр ipAddresses
имеет значение null
.
Недействительный номер порта.
Произошла ошибка при попытке доступа к сокету.
Socket был закрыт.
Вызывающий объект, находящийся выше в стеке вызовов, не имеет разрешения на запрошенную операцию.
Этот метод может быть применен только для сокетов, которые используют флаг InterNetwork или InterNetworkV6.
Маркер отмены был отменен. Это исключение сохраняется в возвращаемой задаче.
Комментарии
Эта операция не блокируется. Возвращаемая задача будет завершена после установки TCP-подключения. Этот метод не блокирует вызывающий поток во время выполнения запроса на подключение.
Этот метод обычно используется сразу после вызова метода , который может возвращать BeginGetHostAddresses несколько IP-адресов для одного узла. Вызовите этот метод, чтобы установить синхронное удаленное подключение к узлу, указанному массивом IP-адресов и номером порта, в качестве асинхронной операции. После подключения к удаленному узлу используйте GetStream метод , чтобы получить базовый NetworkStream. Используйте его NetworkStream
для отправки и получения данных.
Примечание
Если вы получаете SocketException, используйте SocketException.ErrorCode для получения определенного кода ошибки. Получив этот код, вы можете обратиться к документации по коду ошибки API сокетов Windows версии 2 , чтобы получить подробное описание ошибки.
Примечание
Данный член генерирует сведения трассировки, если в приложении включена трассировка сети. Дополнительные сведения см. в разделе Трассировка сети в платформа .NET Framework.
Примечание
Если при использовании IPv6-адреса вы получаете исключение NotSupportedException с сообщением This protocol version is not supported
, убедитесь, что вы включили IPv6 в конструкторе, передав InterNetworkV6.
Этот метод сохраняет в задаче все исключения, не относящиеся к использованию, которые может создавать синхронный аналог метода. Если исключение сохраняется в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему создаются синхронно. Хранимые исключения см. в разделе исключения, создаваемые Connect(IPAddress[], Int32).
См. также раздел
Применяется к
ConnectAsync(IPAddress, Int32, CancellationToken)
- Исходный код:
- TCPClient.cs
- Исходный код:
- TCPClient.cs
- Исходный код:
- TCPClient.cs
Подключает клиента к удаленному TCP-узлу, используя заданный IP-адрес и номер порта в асинхронной операции.
public:
System::Threading::Tasks::ValueTask ConnectAsync(System::Net::IPAddress ^ address, int port, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.ValueTask ConnectAsync (System.Net.IPAddress address, int port, System.Threading.CancellationToken cancellationToken);
member this.ConnectAsync : System.Net.IPAddress * int * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask
Public Function ConnectAsync (address As IPAddress, port As Integer, cancellationToken As CancellationToken) As ValueTask
Параметры
- address
- IPAddress
IP-адрес удаленного узла.
- port
- Int32
Номер порта удаленного узла.
- cancellationToken
- CancellationToken
Токен отмены, который может быть использован для указания на отмену асинхронной операции.
Возвращаемое значение
Задача, представляющая асинхронную операцию подключения.
Исключения
Параметр address
имеет значение null
.
Произошла ошибка при обращении к сокету.
TcpClient закрыт.
Маркер отмены был отменен. Это исключение сохраняется в возвращаемой задаче.
Комментарии
Эта операция не блокируется. Возвращаемая задача будет завершена после установки TCP-подключения. Этот метод не блокирует вызывающий поток во время выполнения запроса на подключение.
Вызовите этот метод, чтобы установить синхронное удаленное подключение узла к указанному IP-адресу и номеру порта в качестве асинхронной операции. После подключения к удаленному узлу используйте GetStream метод , чтобы получить базовый NetworkStream. Используйте его NetworkStream
для отправки и получения данных.
Примечание
Если вы получаете SocketException, используйте SocketException.ErrorCode для получения определенного кода ошибки. Получив этот код, вы можете обратиться к документации по коду ошибки API сокетов Windows версии 2 , чтобы получить подробное описание ошибки.
Примечание
Данный член генерирует сведения трассировки, если в приложении включена трассировка сети. Дополнительные сведения см. в разделе Трассировка сети в платформа .NET Framework.
Примечание
Если при использовании IPv6-адреса вы получаете исключение NotSupportedException с сообщением This protocol version is not supported
, убедитесь, что вы включили IPv6 в конструкторе, передав InterNetworkV6.
Этот метод сохраняет в задаче все исключения, не относящиеся к использованию, которые может создавать синхронный аналог метода. Если исключение сохраняется в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему создаются синхронно. Хранимые исключения см. в разделе исключения, создаваемые Connect(IPAddress, Int32).
См. также раздел
Применяется к
ConnectAsync(String, Int32)
- Исходный код:
- TCPClient.cs
- Исходный код:
- TCPClient.cs
- Исходный код:
- TCPClient.cs
Подключает клиента к указанному TCP-порту заданного узла в асинхронной операции.
public:
System::Threading::Tasks::Task ^ ConnectAsync(System::String ^ host, int port);
public System.Threading.Tasks.Task ConnectAsync (string host, int port);
member this.ConnectAsync : string * int -> System.Threading.Tasks.Task
Public Function ConnectAsync (host As String, port As Integer) As Task
Параметры
- host
- String
DNS-имя удаленного узла, к которому планируется подключение.
- port
- Int32
Имя порта удаленного узла, к которому планируется подключение.
Возвращаемое значение
Объект задачи, представляющий асинхронную операцию.
Исключения
Параметр host
имеет значение null
.
Произошла ошибка при обращении к сокету.
TcpClient закрыт.
Комментарии
Эта операция не блокируется. Возвращенный объект Return Task завершится после установки TCP-подключения. Этот метод не блокирует вызывающий поток во время выполнения запроса на подключение.
Вызовите этот метод, чтобы установить синхронное удаленное подключение к указанному имени узла и номеру порта в качестве асинхронной операции. После подключения к удаленному узлу используйте GetStream метод , чтобы получить базовый NetworkStream. Используйте его NetworkStream
для отправки и получения данных.
Если включен протокол IPv6 и ConnectAsync(String, Int32) вызывается метод для подключения к узлу, который разрешается в адреса IPv6 и IPv4, сначала будет предпринята попытка подключения к IPv6-адресу до IPv4-адреса. Это может привести к задержке времени установки подключения, если узел не прослушивает IPv6-адрес.
Примечание
Если вы получаете SocketException, используйте SocketException.ErrorCode для получения определенного кода ошибки. Получив этот код, вы можете обратиться к документации по коду ошибки API сокетов Windows версии 2 , чтобы получить подробное описание ошибки.
Примечание
Данный член генерирует сведения трассировки, если в приложении включена трассировка сети. Дополнительные сведения см. в разделе Трассировка сети в платформа .NET Framework.
Этот метод сохраняет в задаче все исключения, не относящиеся к использованию, которые может создавать синхронный аналог метода. Если исключение сохраняется в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему создаются синхронно. Хранимые исключения см. в разделе исключения, создаваемые Connect(String, Int32).
См. также раздел
Применяется к
ConnectAsync(IPEndPoint, CancellationToken)
- Исходный код:
- TCPClient.cs
- Исходный код:
- TCPClient.cs
- Исходный код:
- TCPClient.cs
Подключает клиент к удаленному TCP-узлу, используя указанную конечную точку в качестве асинхронной операции.
public:
System::Threading::Tasks::ValueTask ConnectAsync(System::Net::IPEndPoint ^ remoteEP, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.ValueTask ConnectAsync (System.Net.IPEndPoint remoteEP, System.Threading.CancellationToken cancellationToken);
member this.ConnectAsync : System.Net.IPEndPoint * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask
Public Function ConnectAsync (remoteEP As IPEndPoint, cancellationToken As CancellationToken) As ValueTask
Параметры
- remoteEP
- IPEndPoint
Объект IPEndPoint, к которому выполняется подключение.
- cancellationToken
- CancellationToken
Токен отмены, используемый для распространения уведомления о том, что эта операция должна быть отменена.
Возвращаемое значение
Задача, представляющая асинхронную операцию.
Исключения
Маркер отмены был отменен. Это исключение сохраняется в возвращаемой задаче.
Комментарии
Эта операция не блокируется. Возвращенный объект Return Task завершится после установки TCP-подключения. Этот метод не блокирует вызывающий поток во время выполнения запроса на подключение.
Вызовите этот метод, чтобы установить синхронное удаленное подключение узла к указанному IPEndPointобъекту . Перед вызовом Connect
необходимо создать экземпляр IPEndPoint
класса , используя IP-адрес и номер порта. Используйте его IPEndPoint
в remoteEP
качестве параметра . Метод Connect
будет блокироваться до тех пор, пока не будет подключен или не завершится сбоем. После подключения к удаленному узлу используйте GetStream метод , чтобы получить базовый NetworkStream. Используйте его NetworkStream
для отправки и получения данных.
Примечание
Если вы получаете SocketException, используйте SocketException.ErrorCode для получения определенного кода ошибки. Получив этот код, вы можете обратиться к документации по коду ошибки API сокетов Windows версии 2 , чтобы получить подробное описание ошибки.
Примечание
Данный член генерирует сведения трассировки, если в приложении включена трассировка сети. Дополнительные сведения см. в разделе Трассировка сети в платформа .NET Framework.
Примечание
Если при использовании IPv6-адреса вы получаете исключение NotSupportedException с сообщением This protocol version is not supported
, убедитесь, что вы включили IPv6 в конструкторе, передав InterNetworkV6.
Этот метод сохраняет в задаче все исключения, не относящиеся к использованию, которые может создавать синхронный аналог метода. Если исключение сохраняется в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему создаются синхронно. Хранимые исключения см. в разделе исключения, создаваемые Connect(IPEndPoint).
Применяется к
ConnectAsync(IPAddress[], Int32)
- Исходный код:
- TCPClient.cs
- Исходный код:
- TCPClient.cs
- Исходный код:
- TCPClient.cs
Подключает клиента к удаленному TCP-узлу, используя заданные IP-адреса и номер порта в асинхронной операции.
public:
System::Threading::Tasks::Task ^ ConnectAsync(cli::array <System::Net::IPAddress ^> ^ addresses, int port);
public System.Threading.Tasks.Task ConnectAsync (System.Net.IPAddress[] addresses, int port);
member this.ConnectAsync : System.Net.IPAddress[] * int -> System.Threading.Tasks.Task
Public Function ConnectAsync (addresses As IPAddress(), port As Integer) As Task
Параметры
- port
- Int32
Номер порта, к которому выполняется подключение.
Возвращаемое значение
Объект задачи, представляющий асинхронную операцию.
Исключения
Параметр ipAddresses
имеет значение null
.
Недействительный номер порта.
Произошла ошибка при попытке доступа к сокету.
Socket был закрыт.
Вызывающий объект, находящийся выше в стеке вызовов, не имеет разрешения на запрошенную операцию.
Этот метод может быть применен только для сокетов, которые используют флаг InterNetwork или InterNetworkV6.
Комментарии
Эта операция не блокируется. Возвращенный объект Return Task завершится после установки TCP-подключения. Этот метод не блокирует вызывающий поток во время выполнения запроса на подключение.
Этот метод обычно используется сразу после вызова метода , который может возвращать BeginGetHostAddresses несколько IP-адресов для одного узла. Вызовите этот метод, чтобы установить синхронное удаленное подключение узла к узлу, указанному массивом IPAddress элементов и номером порта, в качестве асинхронной операции. После подключения к удаленному узлу используйте GetStream метод , чтобы получить базовый NetworkStream. Используйте его NetworkStream
для отправки и получения данных.
Примечание
Если вы получаете SocketException, используйте SocketException.ErrorCode для получения определенного кода ошибки. Получив этот код, вы можете обратиться к документации по коду ошибки API сокетов Windows версии 2 , чтобы получить подробное описание ошибки.
Примечание
Данный член генерирует сведения трассировки, если в приложении включена трассировка сети. Дополнительные сведения см. в разделе Трассировка сети в платформа .NET Framework.
Примечание
Если при использовании IPv6-адреса вы получаете исключение NotSupportedException с сообщением This protocol version is not supported
, убедитесь, что вы включили IPv6 в конструкторе, передав InterNetworkV6.
Этот метод сохраняет в задаче все исключения, не относящиеся к использованию, которые может создавать синхронный аналог метода. Если исключение сохраняется в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему создаются синхронно. Хранимые исключения см. в разделе исключения, создаваемые Connect(IPAddress[], Int32).
См. также раздел
Применяется к
ConnectAsync(IPAddress, Int32)
- Исходный код:
- TCPClient.cs
- Исходный код:
- TCPClient.cs
- Исходный код:
- TCPClient.cs
Подключает клиента к удаленному TCP-узлу, используя заданный IP-адрес и номер порта в асинхронной операции.
public:
System::Threading::Tasks::Task ^ ConnectAsync(System::Net::IPAddress ^ address, int port);
public System.Threading.Tasks.Task ConnectAsync (System.Net.IPAddress address, int port);
member this.ConnectAsync : System.Net.IPAddress * int -> System.Threading.Tasks.Task
Public Function ConnectAsync (address As IPAddress, port As Integer) As Task
Параметры
- port
- Int32
Номер порта, к которому выполняется подключение.
Возвращаемое значение
Объект задачи, представляющий асинхронную операцию.
Исключения
Параметр address
имеет значение null
.
Произошла ошибка при обращении к сокету.
TcpClient закрыт.
Комментарии
Эта операция не блокируется. Возвращенный объект Return Task завершится после установки TCP-подключения. Этот метод не блокирует вызывающий поток во время выполнения запроса на подключение.
Вызовите этот метод, чтобы установить синхронное удаленное подключение к указанному IPAddress узлу и номеру порта в качестве асинхронной операции. После подключения к удаленному узлу используйте GetStream метод , чтобы получить базовый NetworkStreamобъект . Используйте его NetworkStream
для отправки и получения данных.
Примечание
Если вы получаете SocketException, используйте SocketException.ErrorCode для получения определенного кода ошибки. Получив этот код, вы можете ознакомиться с документацией по коду ошибок API сокетов Windows версии 2 , чтобы получить подробное описание ошибки.
Примечание
Данный член генерирует сведения трассировки, если в приложении включена трассировка сети. Дополнительные сведения см. в разделе Трассировка сети в платформа .NET Framework.
Примечание
Если при использовании IPv6-адреса вы получаете исключение NotSupportedException с сообщением This protocol version is not supported
, убедитесь, что вы включили IPv6 в конструкторе, передав .InterNetworkV6
Этот метод сохраняет в задаче все исключения, не относящиеся к использованию, которые может создавать синхронный аналог метода. Если исключение сохраняется в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему создаются синхронно. Хранимые исключения см. в разделе исключения, создаваемые Connect(IPAddress, Int32).
См. также раздел
Применяется к
ConnectAsync(IPEndPoint)
- Исходный код:
- TCPClient.cs
- Исходный код:
- TCPClient.cs
- Исходный код:
- TCPClient.cs
Подключает клиент к удаленному узлу TCP, используя указанную конечную точку в качестве асинхронной операции.
public:
System::Threading::Tasks::Task ^ ConnectAsync(System::Net::IPEndPoint ^ remoteEP);
public System.Threading.Tasks.Task ConnectAsync (System.Net.IPEndPoint remoteEP);
member this.ConnectAsync : System.Net.IPEndPoint -> System.Threading.Tasks.Task
Public Function ConnectAsync (remoteEP As IPEndPoint) As Task
Параметры
- remoteEP
- IPEndPoint
Объект IPEndPoint, к которому выполняется подключение.
Возвращаемое значение
Задача, представляющая асинхронную операцию.
Комментарии
Эта операция не блокируется. Возвращаемый Task объект завершится после установки TCP-подключения. Этот метод не блокирует вызывающий поток во время выполнения запроса на подключение.
Вызовите этот метод, чтобы установить синхронное удаленное подключение узла к указанному IPEndPointобъекту . Перед вызовом Connect
необходимо создать экземпляр IPEndPoint
класса , используя IP-адрес и номер порта. Используйте этот IPEndPoint
параметр в remoteEP
качестве параметра . Метод Connect
будет блокироваться до тех пор, пока он не подключится или не завершится сбоем. После подключения к удаленному узлу используйте GetStream метод , чтобы получить базовый NetworkStreamобъект . Используйте его NetworkStream
для отправки и получения данных.
Примечание
Если вы получаете SocketException, используйте SocketException.ErrorCode для получения определенного кода ошибки. Получив этот код, вы можете ознакомиться с документацией по коду ошибки API сокетов Windows версии 2 , чтобы получить подробное описание ошибки.
Примечание
Данный член генерирует сведения трассировки, если в приложении включена трассировка сети. Дополнительные сведения см. в разделе Трассировка сети в платформа .NET Framework.
Примечание
Если при использовании IPv6-адреса вы получаете с сообщением NotSupportedException
"Эта версия протокола не поддерживается", убедитесь, что вы включили IPv6 в конструкторе, передав InterNetworkV6.
Этот метод сохраняет в задаче все исключения, не относящиеся к использованию, которые может создавать синхронный аналог метода. Если исключение сохраняется в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему создаются синхронно. Хранимые исключения см. в разделе исключения, создаваемые Connect(IPEndPoint).