以前在使用阻塞(blocked)socket的connect,send,recv函数的时候,通常都使用settimeout来设置超时。
如下,
#!/usr/bin/env python
import socket
import time
fd = socket.socket()
try:
print "connect", time.ctime()
fd.settimeout(5)
fd.connect(("twitter.com", 22))
except:
print "timeout", time.ctime()
finally:
fd.settimeout(0)