John Nagle wrote: > On 7/23/2010 1:45 AM, Thomas Guettler wrote: >> Hi, >> >> I use non-blocking io to check for timeouts. Sometimes I get EAGAIN >> (Resource temporarily unavailable) >> on write(). My working code looks like this. But I am unsure how many >> bytes have been written to the >> pipe if I get an EAGAIN IOError.
.... > Since your code isn't doing anything else while waiting for a > write to complete on the pipe, why use non-blocking I/O at all? > > (I know, the Python I/O timeout logic is broken in some versions. > You're probably working around that.) I want to handle timeouts. The app runs on linux, but I don't want to use signals, since it is in a wsgi context: http://code.google.com/p/modwsgi/wiki/ApplicationIssues > .. As a general rule therefore, no WSGI application component should > attempt to register its own signal handlers. > The hint of Kushal was right: The timeout was reached, and I didn't check the result of the select call. -- Thomas Guettler, http://www.thomas-guettler.de/ E-Mail: guettli (*) thomas-guettler + de -- http://mail.python.org/mailman/listinfo/python-list