TcpClient.ConnectAsync 方法

定义

使用指定的主机名和端口号将客户端连接到远程 TCP 主机以作为异步操作。

重载

ConnectAsync(String, Int32, CancellationToken)

将客户端连接到指定主机上的指定 TCP 端口以作为异步操作。

ConnectAsync(IPAddress[], Int32, CancellationToken)

使用指定的 IP 地址和端口号将客户端连接到远程 TCP 主机以作为异步操作。

ConnectAsync(IPAddress, Int32, CancellationToken)

使用指定的 IP 地址和端口号将客户端连接到远程 TCP 主机以作为异步操作。

ConnectAsync(String, Int32)

将客户端连接到指定主机上的指定 TCP 端口以作为异步操作。

ConnectAsync(IPEndPoint, CancellationToken)

使用指定的终结点作为异步操作将客户端连接到远程 TCP 主机。

ConnectAsync(IPAddress[], Int32)

使用指定的 IP 地址和端口号将客户端连接到远程 TCP 主机以作为异步操作。

ConnectAsync(IPAddress, Int32)

使用指定的 IP 地址和端口号将客户端连接到远程 TCP 主机以作为异步操作。

ConnectAsync(IPEndPoint)

使用指定的终结点作为异步操作将客户端连接到远程 TCP 主机。

ConnectAsync(String, Int32, CancellationToken)

Source:
TCPClient.cs
Source:
TCPClient.cs
Source:
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

port 参数不介于 MinPortMaxPort 之间。

访问套接字时出错。

取消令牌已取消。 此异常存储在返回的任务中。

注解

此操作不会阻止。 建立 TCP 连接后,返回的任务将完成。 此方法不会在连接请求进行时阻止调用线程。

调用此方法以异步操作的形式与指定的主机名和端口号建立同步远程主机连接。 与远程主机连接后,使用 GetStream 方法获取基础 NetworkStream。 使用此 NetworkStream 来发送和接收数据。

如果启用了 IPv6 并 ConnectAsync(String, Int32) 调用 方法以连接到同时解析为 IPv6 和 IPv4 地址的主机,则会先尝试连接到 IPv6 地址,然后再尝试该 IPv4 地址。 如果主机未侦听 IPv6 地址,这可能会延迟建立连接的时间。

备注

如果收到 SocketException,请使用 SocketException.ErrorCode 获取特定的错误代码。 获取此代码后,可以参阅 Windows 套接字版本 2 API 错误代码 文档,获取错误的详细说明。

备注

当你在应用程序中启用网络跟踪后,此成员将输出跟踪信息。 有关详细信息,请参阅.NET Framework中的网络跟踪

此方法将存储在任务中,它返回该方法的同步对应项可能引发的所有非使用异常。 如果异常存储在返回的任务中,则在等待任务时将引发该异常。 使用异常(如 ArgumentException)仍会同步引发。 有关存储的异常,请参阅 引发的 Connect(String, Int32)异常。

另请参阅

适用于

ConnectAsync(IPAddress[], Int32, CancellationToken)

Source:
TCPClient.cs
Source:
TCPClient.cs
Source:
TCPClient.cs

使用指定的 IP 地址和端口号将客户端连接到远程 TCP 主机以作为异步操作。

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

端口号无效。

尝试访问套接字时出错。

调用堆栈中的较高调用方无权执行所请求的操作。

此方法对于使用 InterNetwork 标志或 InterNetworkV6 标志的套接字有效。

取消令牌已取消。 此异常存储在返回的任务中。

注解

此操作不会阻止。 建立 TCP 连接后,返回的任务将完成。 此方法不会在连接请求进行时阻止调用线程。

此方法通常在调用 BeginGetHostAddresses 方法后立即使用,该方法可以为单个主机返回多个 IP 地址。 调用此方法,以异步操作的形式与 IP 地址数组和端口号指定的主机建立同步远程主机连接。 与远程主机连接后,使用 GetStream 方法获取基础 NetworkStream。 使用此 NetworkStream 来发送和接收数据。

备注

如果收到 SocketException,请使用 SocketException.ErrorCode 获取特定的错误代码。 获取此代码后,可以参阅 Windows 套接字版本 2 API 错误代码 文档,获取错误的详细说明。

备注

当你在应用程序中启用网络跟踪后,此成员将输出跟踪信息。 有关详细信息,请参阅.NET Framework中的网络跟踪

备注

如果在使用 IPv6 地址时收到带有消息 This protocol version is not supported 的 NotSupportedException,请确保通过传递 InterNetworkV6在构造函数中启用了 IPv6。

此方法将存储在任务中,它返回该方法的同步对应项可能引发的所有非使用异常。 如果异常存储在返回的任务中,则在等待任务时将引发该异常。 使用异常(如 ArgumentException)仍会同步引发。 有关存储的异常,请参阅 引发的 Connect(IPAddress[], Int32)异常。

另请参阅

适用于

ConnectAsync(IPAddress, Int32, CancellationToken)

Source:
TCPClient.cs
Source:
TCPClient.cs
Source:
TCPClient.cs

使用指定的 IP 地址和端口号将客户端连接到远程 TCP 主机以作为异步操作。

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

port 不在 MinPortMaxPort 之间。

访问套接字时出错。

取消令牌已取消。 此异常存储在返回的任务中。

注解

此操作不会阻止。 建立 TCP 连接后,返回的任务将完成。 此方法不会在连接请求进行时阻止调用线程。

调用此方法以异步操作的形式与指定的 IP 地址和端口号建立同步远程主机连接。 与远程主机连接后,使用 GetStream 方法获取基础 NetworkStream。 使用此 NetworkStream 来发送和接收数据。

备注

如果收到 SocketException,请使用 SocketException.ErrorCode 获取特定的错误代码。 获取此代码后,可以参阅 Windows 套接字版本 2 API 错误代码 文档,获取错误的详细说明。

备注

当你在应用程序中启用网络跟踪后,此成员将输出跟踪信息。 有关详细信息,请参阅.NET Framework中的网络跟踪

备注

如果在使用 IPv6 地址时收到带有消息 This protocol version is not supported 的 NotSupportedException,请确保通过传递 InterNetworkV6在构造函数中启用了 IPv6。

此方法将存储在任务中,它返回该方法的同步对应项可能引发的所有非使用异常。 如果异常存储在返回的任务中,则在等待任务时将引发该异常。 使用异常(如 ArgumentException)仍会同步引发。 有关存储的异常,请参阅 引发的 Connect(IPAddress, Int32)异常。

另请参阅

适用于

ConnectAsync(String, Int32)

Source:
TCPClient.cs
Source:
TCPClient.cs
Source:
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

port 参数不介于 MinPortMaxPort 之间。

访问套接字时出错。

注解

此操作不会阻止。 建立 TCP 连接后,返回的 Returns Task 对象将完成。 此方法不会在连接请求进行时阻止调用线程。

调用此方法以异步操作的形式与指定的主机名和端口号建立同步远程主机连接。 与远程主机连接后,使用 GetStream 方法获取基础 NetworkStream。 使用此 NetworkStream 来发送和接收数据。

如果启用了 IPv6 并 ConnectAsync(String, Int32) 调用 方法以连接到同时解析为 IPv6 和 IPv4 地址的主机,则会先尝试连接到 IPv6 地址,然后再尝试该 IPv4 地址。 如果主机未侦听 IPv6 地址,这可能会延迟建立连接的时间。

备注

如果收到 SocketException,请使用 SocketException.ErrorCode 获取特定的错误代码。 获取此代码后,可以参阅 Windows 套接字版本 2 API 错误代码 文档,获取错误的详细说明。

备注

当你在应用程序中启用网络跟踪后,此成员将输出跟踪信息。 有关详细信息,请参阅.NET Framework中的网络跟踪

此方法将存储在任务中,它返回该方法的同步对应项可能引发的所有非使用异常。 如果异常存储在返回的任务中,则在等待任务时将引发该异常。 使用异常(如 ArgumentException)仍会同步引发。 有关存储的异常,请参阅 引发的 Connect(String, Int32)异常。

另请参阅

适用于

ConnectAsync(IPEndPoint, CancellationToken)

Source:
TCPClient.cs
Source:
TCPClient.cs
Source:
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

可用于传播应取消此操作的通知的取消标记。

返回

表示异步操作的任务。

例外

取消令牌已取消。 此异常存储在返回的任务中。

注解

此操作不会阻止。 建立 TCP 连接后,返回的 Returns Task 对象将完成。 此方法不会在连接请求进行时阻止调用线程。

调用此方法以建立与指定 IPEndPoint的同步远程主机连接。 在调用 Connect之前,必须使用 IP 地址和端口号创建 类的实例 IPEndPoint 。 使用此参数 IPEndPoint 作为 remoteEP 参数。 方法 Connect 将阻止,直到它连接或失败。 与远程主机连接后,使用 GetStream 方法获取基础 NetworkStream。 使用此 NetworkStream 来发送和接收数据。

备注

如果收到 SocketException,请使用 SocketException.ErrorCode 获取特定的错误代码。 获取此代码后,可以参阅 Windows 套接字版本 2 API 错误代码 文档,获取错误的详细说明。

备注

当你在应用程序中启用网络跟踪后,此成员将输出跟踪信息。 有关详细信息,请参阅.NET Framework中的网络跟踪

备注

如果在使用 IPv6 地址时收到带有消息 This protocol version is not supported 的 NotSupportedException,请确保通过传递 InterNetworkV6在构造函数中启用了 IPv6。

此方法将存储在任务中,它返回该方法的同步对应项可能引发的所有非使用异常。 如果异常存储在返回的任务中,则在等待任务时将引发该异常。 使用异常(如 ArgumentException)仍会同步引发。 有关存储的异常,请参阅 引发的 Connect(IPEndPoint)异常。

适用于

ConnectAsync(IPAddress[], Int32)

Source:
TCPClient.cs
Source:
TCPClient.cs
Source:
TCPClient.cs

使用指定的 IP 地址和端口号将客户端连接到远程 TCP 主机以作为异步操作。

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

参数

addresses
IPAddress[]

要连接到的主机的 IPAddress 数组。

port
Int32

要连接到的端口号。

返回

表示异步操作的任务对象。

例外

ipAddresses 参数为 null

端口号无效。

尝试访问套接字时出错。

调用堆栈中的较高调用方无权执行所请求的操作。

此方法对于使用 InterNetwork 标志或 InterNetworkV6 标志的套接字有效。

注解

此操作不会阻止。 建立 TCP 连接后,返回的 Returns Task 对象将完成。 此方法不会在连接请求进行时阻止调用线程。

此方法通常在调用 BeginGetHostAddresses 方法后立即使用,该方法可以为单个主机返回多个 IP 地址。 调用此方法以建立与由元素数组和端口号指定的主机的 IPAddress 同步远程主机连接,作为异步操作。 与远程主机连接后,使用 GetStream 方法获取基础 NetworkStream。 使用此 NetworkStream 来发送和接收数据。

备注

如果收到 SocketException,请使用 SocketException.ErrorCode 获取特定的错误代码。 获取此代码后,可以参阅 Windows 套接字版本 2 API 错误代码 文档,获取错误的详细说明。

备注

当你在应用程序中启用网络跟踪后,此成员将输出跟踪信息。 有关详细信息,请参阅.NET Framework中的网络跟踪

备注

如果在使用 IPv6 地址时收到带有消息 This protocol version is not supported 的 NotSupportedException,请确保通过传递 InterNetworkV6在构造函数中启用了 IPv6。

此方法将存储在任务中,它返回该方法的同步对应项可能引发的所有非使用异常。 如果异常存储在返回的任务中,则在等待任务时将引发该异常。 使用异常(如 ArgumentException)仍会同步引发。 有关存储的异常,请参阅 引发的 Connect(IPAddress[], Int32)异常。

另请参阅

适用于

ConnectAsync(IPAddress, Int32)

Source:
TCPClient.cs
Source:
TCPClient.cs
Source:
TCPClient.cs

使用指定的 IP 地址和端口号将客户端连接到远程 TCP 主机以作为异步操作。

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

参数

address
IPAddress

你打算连接到的主机的 IPAddress

port
Int32

要连接到的端口号。

返回

表示异步操作的任务对象。

例外

address 参数为 null

port 不在 MinPortMaxPort 之间。

访问套接字时出错。

注解

此操作不会阻止。 建立 TCP 连接后,返回的 Returns Task 对象将完成。 此方法不会在连接请求进行时阻止调用线程。

调用此方法以异步操作的形式与指定的 IPAddress 和 端口号建立同步远程主机连接。 与远程主机连接后,使用 GetStream 方法获取基础 NetworkStream。 使用此 NetworkStream 来发送和接收数据。

备注

如果收到 , SocketException请使用 SocketException.ErrorCode 获取特定错误代码。 获取此代码后,可以参阅 Windows 套接字版本 2 API 错误代码 文档,了解错误的详细说明。

备注

当你在应用程序中启用网络跟踪后,此成员将输出跟踪信息。 有关详细信息,请参阅.NET Framework中的网络跟踪

备注

如果在使用 IPv6 地址时收到带有消息 This protocol version is not supported 的 NotSupportedException,请确保通过传递 InterNetworkV6在构造函数中启用了 IPv6。

此方法存储在任务中,它返回该方法的同步对应项可能引发的所有非使用异常。 如果异常存储在返回的任务中,则在等待任务时将引发该异常。 使用异常(如 ArgumentException)仍会同步引发。 有关存储的异常,请参阅 引发的 Connect(IPAddress, Int32)异常。

另请参阅

适用于

ConnectAsync(IPEndPoint)

Source:
TCPClient.cs
Source:
TCPClient.cs
Source:
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

返回

表示异步操作的任务。

注解

此操作不会阻止。 在建立 TCP 连接后,返回 Task 的对象将完成。 在连接请求正在进行时,此方法不会阻止调用线程。

调用此方法以建立与指定 IPEndPoint的同步远程主机连接。 在调用 Connect之前,必须使用 IP 地址和端口号创建 类的实例 IPEndPoint 。 使用此参数 IPEndPoint 作为 remoteEP 参数。 方法 Connect 将阻止,直到它连接或失败。 与远程主机连接后,使用 GetStream 方法获取基础 NetworkStream。 使用此 NetworkStream 来发送和接收数据。

备注

如果收到 , SocketException请使用 SocketException.ErrorCode 获取特定错误代码。 获取此代码后,可以参阅 Windows 套接字版本 2 API 错误代码 文档,了解错误的详细说明。

备注

当你在应用程序中启用网络跟踪后,此成员将输出跟踪信息。 有关详细信息,请参阅.NET Framework中的网络跟踪

备注

如果在使用 IPv6 地址时收到 NotSupportedException 消息“不支持此协议版本”,请确保通过传递 InterNetworkV6在构造函数中启用了 IPv6。

此方法存储在任务中,它返回该方法的同步对应项可能引发的所有非使用异常。 如果异常存储在返回的任务中,则在等待任务时将引发该异常。 使用异常(如 ArgumentException)仍会同步引发。 有关存储的异常,请参阅 引发的 Connect(IPEndPoint)异常。

适用于