On Wed, 2006-11-22 at 19:45 +0100, Fredrik Lundh wrote: > Fredrik Tolf wrote: > > > So how does it work? Does my code get to return Py_FALSE, and the > > interpreter ignores it, seeing that an exception is set? Is a non-local > > exit performed right over my call stack (in which case my next question > > would be how to clean up resources being used from my C code)? Or does > > something completely else happen? > > the signal handler adds an entry to a "pending calls" queue, which is > checked by the interpreter at regular intervals.
I see. So if I get that right, that would mean that if I, in my function, would loop and retry when getting an EINTR instead of returning, a KeyboardInterrupt from e.g. Ctrl-C would be delayed until it has other reason to return? Thanks for your answer! Fredrik Tolf -- http://mail.python.org/mailman/listinfo/python-list