[Python-Dev] Python threads end up blocking signals
in subprocesses
Martin v. Loewis
martin at v.loewis.de
Tue Dec 23 03:51:01 EST 2003
Jeff Epler wrote:
> You could
> submit an interpretation request, but I think the committee would
> concur with my reading.
Hmm. This is what I now did: I submitted an interpretation request
to PASC:
Edition of Specification (Year): 2003
Defect code : 3. Clarification required
It is unclear whether calling system(3) invokes atfork handlers in a
conforming implementation. system(3) specifies
"The environment of the executed command shall be as if a child process
were created using fork(), and the child process invoked the sh utility
using execl() as follows:"
In particular, usage of the word "environment" is confusing here. It may
refer just to environment variables, however, the "Application usage"
sections indicates that also signal handlers should be arranged as if
the process was created through fork() and execl(). This still makes
not clear whether handlers installed through pthread_atfork() are invoked.
Action:
The description of system() should change to
"system() behaves as if a new process was created using fork(),
and the child process invoked the sh utility using execl() ..."
In addition, the application usage section should make it clear that
atfork handlers are invoked.
Regards,
Martin
More information about the Python-Dev
mailing list