Georg Brandl <ge...@python.org> added the comment: I think you're mistaking a closed connection with "no data available".
Small demo that this works as intended: >>> s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) >>> s.connect(('localhost', 1234)) >>> s.recv(10) ^CTraceback (most recent call last): File "<stdin>", line 1, in <module> KeyboardInterrupt >>> s.setblocking(False) >>> s.recv(10) Traceback (most recent call last): File "<stdin>", line 1, in <module> socket.error: [Errno 11] Resource temporarily unavailable The corresponding server: >>> x = socket.socket(socket.AF_INET, socket.SOCK_STREAM) >>> x.bind(('', 1234)) >>> x.listen(1) >>> x.accept() (<socket._socketobject object at 0x7f4211e997c0>, ('127.0.0.1', 39146)) ---------- nosy: +georg.brandl resolution: -> works for me status: open -> closed _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue12977> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com