今天发现会有一种比较特殊的情况:建立socket时,对应的端口存在,但是建立成功后向其发送电文,不会返回任何电文时,recv函数
会一直阻塞。
所以,马上想到了去查一下如何设置timeout,以下是对MSDN的链接和大致的代码。
setsockopt function
SOCKET sock; int rcv_timeout = 5000; //5000ms ...................................... ...................................... setsockopt(sock, SOL_SOCKET, SO_RCVTIMEO, (char *)&rcv_timeout, sizeof(int));