使用WSAETIMEDOUT时,connect出现故障。这很好,但是有没有办法缩短超时时间呢?比如2-3秒?目前,它似乎是更高的,比如10秒。
操作系统是Windows,使用Winsock和C++
发布于 2012-04-17 10:45:44
在调用connect()之前,将套接字设置为非阻塞模式。当它返回一个WSAEWOULDBLOCK错误时,调用select(),并指定您想要的超时间隔。如果select()报告套接字变为可写,则连接成功。如果select()报告超时,请关闭套接字。
发布于 2012-04-16 23:27:06
以前有人问过这个问题:WINSOCK - Setting a timeout for a connection attempt on a non existing IP?
不,它是由IP堆栈处理的。如果您需要更改此功能,则必须启动计时器并终止连接。
https://stackoverflow.com/questions/10176938
复制相似问题