timeoutsocket - not blocking on connect?

Raja raja0576 at yahoo.com
Fri Feb 13 13:18:14 CET 2004


Hello
Im trying to catch timeouts from a socket and my code looks like
        try:
                timeoutsocket.setDefaultSocketTimeout(10)
                s = timeoutsocket.timeoutsocket(timeoutsocket.AF_INET,
timeoutsocket.SOCK_STREAM)
                print s.get_timeout()
                s.connect(("localhost", 80))
         except timeoutsocket.Timeout:
                print 'Timeout'

I do give a SIGSTOP on my webserver so that all the requests hang and
i have  created a timeout situation.(When i connect to
http://localhost, it hangs).

I looked at timeoutsocket.py and it looks like the connect() does call
socket.connect and then does a select.select using the sock. In my
case, it does have the write file descriptors not blocking and so it
does return back. Shouldnt it just return a timeout for the above
case? The documentation on timeoutsocket.py mentions that if the
timeout needs to be captured on connect(), u shud use the
setdefaultsockettimeout.


Im a newbieee so go easy on me. Please let me know if you need any
more info.

TIA
Raj



More information about the Python-list mailing list