[Python-Dev] Signals, threads, blocking C functions

Nick Maclaren nmm1 at cus.cam.ac.uk
Mon Sep 4 16:05:56 CEST 2006


"Gustavo Carneiro" <gjcarneiro at gmail.com> wrote:
>
> That's a very good point; I wasn't aware that child processes
> inherited the signals mask from their parent processes.

That's one of the few places where POSIX does describe what happens.
Well, usually.  You really don't want to know what happens when you
call something revolting, like csh or a setuid program.  This
particular mess is why I had to write my own nohup - the new POSIX
interfaces broke the existing one, and it remains broken today on
almost all systems.

>   I am now thinking of something along these lines:
> typedef void (*PyPendingCallNotify)(void *user_data);
> PyAPI_FUNC(void) Py_AddPendingCallNotify(PyPendingCallNotify callback,
>     void *user_data);
> PyAPI_FUNC(void) Py_RemovePendingCallNotify(PyPendingCallNotify
>     callback, void *user_data);

Why would that help?  The problems are semantic, not syntactic.

Anthony Baxter isn't exaggerating the problem, despite what you may
think from his posting.


Regards,
Nick Maclaren,
University of Cambridge Computing Service,
New Museums Site, Pembroke Street, Cambridge CB2 3QH, England.
Email:  nmm1 at cam.ac.uk
Tel.:  +44 1223 334761    Fax:  +44 1223 334679


More information about the Python-Dev mailing list