[Python-Dev] Signals, threads, blocking C functions
gjcarneiro at gmail.com
Mon Sep 4 15:48:54 CEST 2006
On 9/4/06, Michael Hudson <mwh at python.net> wrote:
> "Gustavo Carneiro" <gjcarneiro at gmail.com> writes:
> > According to , all python needs to do to avoid this problem is
> > block all signals in all but the main thread;
> Argh, no: then people who call system() from non-main threads end up
> running subprocesses with all signals masked, which breaks other
> things in very mysterious ways. Been there...
That's a very good point; I wasn't aware that child processes
inherited the signals mask from their parent processes.
> No time to read the rest of the post, maybe in a few days...
Don't worry. From the feedback received so far it seems that any
proposed solution has to wait for Python 2.6 :-(
I am now thinking of something along these lines:
typedef void (*PyPendingCallNotify)(void *user_data);
PyAPI_FUNC(void) Py_AddPendingCallNotify(PyPendingCallNotify callback,
callback, void *user_data);
More information about the Python-Dev