[Twisted-Python] can I detect a child stopped?
exarkun at twistedmatrix.com
exarkun at twistedmatrix.com
Sun Dec 5 00:29:05 MST 2010
On 4 Dec, 07:10 pm, ndbecker2 at gmail.com wrote:
>exarkun at twistedmatrix.com wrote:
>>On 03:47 pm, ndbecker2 at gmail.com wrote:
>>>Using processProtocol. If a child is stopped (e.g., by SIGSTOP), is
>>>there
>>>some way to detect this?
>>
>>The parent will get a SIGCHLD when the child gets SIGSTOP or SIGCONT.
>>Using sigaction, you can learn which process was affected, and in what
>>way. We don't have a sigaction wrapper that provides this
>>functionality, though (the stdlib signal.signal actually wraps
>>sigaction, but it doesn't expose any more functionality than you get
>>from signal(2)).
>>
>>Jean-Paul
>
>Didn't twisted already install it's own signal handler for SIGCHLD? So
>you're suggesting I can chain my own, which then calls the one
>installed by
>twisted?
No, at least not with `signal.signal`, because the necessary information
isn't exposed by Python. You need to get the siginfo_t that
sigaction(2) provides, but isn't exposed to Python.
If there were a module exposing that functionality, then you could
perhaps work something out. If such a module were generally available,
Twisted could even try using it to provide this functionality out of the
box.
Jean-Paul
More information about the Twisted-Python
mailing list