SocketChannel.Connect(SocketAddress) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
连接此通道的套接字。
[Android.Runtime.Register("connect", "(Ljava/net/SocketAddress;)Z", "GetConnect_Ljava_net_SocketAddress_Handler")]
public abstract bool Connect(Java.Net.SocketAddress? remote);
[<Android.Runtime.Register("connect", "(Ljava/net/SocketAddress;)Z", "GetConnect_Ljava_net_SocketAddress_Handler")>]
abstract member Connect : Java.Net.SocketAddress -> bool
参数
- remote
- SocketAddress
要连接到此通道的远程地址
返回
true 如果已建立连接, false 则此通道处于非阻塞模式且连接操作正在进行中
- 属性
例外
如果通道已连接,则为
此通道上已执行非阻塞连接操作。
如果此通道已关闭,则为
如果此方法正在执行时,此通道由另一个线程关闭。
如果另一个线程在此操作正在进行时中断调用线程, 调用线程将设置中断状态,并且此通道将关闭。
如果未解析地址,则为
如果不支持地址类型,则为 。
如果发生 I/O 错误,则为 。
注解
连接此通道的套接字。
如果此通道处于非阻塞模式,则此方法的调用将启动非阻塞连接操作。 如果立即建立连接,就像本地连接一样发生,则此方法返回 true。 否则,此方法返回 false ,并且连接操作必须稍后通过调用 #finishConnect finishConnect 该方法完成。
如果此通道处于阻止模式,则在建立连接或发生 I/O 错误之前,此方法的调用将阻止。
此方法执行与类完全相同的安全检查 java.net.Socket 。 也就是说,如果已安装安全管理器,则此方法验证其 java.lang.SecurityManager#checkConnect checkConnect 方法是否允许连接到给定远程终结点的地址和端口号。
可以随时调用此方法。 如果在调用此方法时调用此通道的读取或写入操作,则该操作将首先阻止,直到此调用完成。 如果启动连接尝试但失败,也就是说,如果调用此方法将引发已检查的异常,则将关闭通道。
Java文档java.nio.channels.SocketChannel.connect(java.net.SocketAddress)。
本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。