Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 如何设置socket.connect()调用的超时?_.net_Sockets_Connect - Fatal编程技术网

.net 如何设置socket.connect()调用的超时?

.net 如何设置socket.connect()调用的超时?,.net,sockets,connect,.net,Sockets,Connect,我有一个应用程序可以连接到可能已关闭的主机。如果主机停机,我不想等待30秒左右的超时时间。我现在正在使用阻塞插座 我一直在研究socket.poll()和socket.select(),但我更希望在socket上设置一个时间。我不介意这是否是我必须在系统中的某个地方进行的设置。此外,我似乎明白,轮询和选择不适用于面向连接的通信-这是正确的吗 如果这是绝对不可能的,那么使用poll、select或其他技术获得所需结果的好方法是什么?请参见和 更新:有一个更好的例子 IAsyncResult asr

我有一个应用程序可以连接到可能已关闭的主机。如果主机停机,我不想等待30秒左右的超时时间。我现在正在使用阻塞插座

我一直在研究socket.poll()和socket.select(),但我更希望在socket上设置一个时间。我不介意这是否是我必须在系统中的某个地方进行的设置。此外,我似乎明白,轮询和选择不适用于面向连接的通信-这是正确的吗

如果这是绝对不可能的,那么使用poll、select或其他技术获得所需结果的好方法是什么?

请参见和

更新:有一个更好的例子

IAsyncResult asr = socket.BeginConnect( ip, port, null, null );

bool res = asr.AsyncWaitHandle.WaitOne( 10000, true );  // 10 sec timeout