Part of twisted.internet.base View Source View In Hierarchy
Known subclasses: twisted.internet.iocpreactor.reactor.IOCPReactor, twisted.internet.posixbase.PosixReactorBase
Private mixin to manage signals: it installs signal handlers at start time, and define run method.
It can only be used mixed in withReactorBase
,
and has to be defined first in the inheritance (so that method resolution
order finds startRunning first).
Instance Variables | _installSignalHandlers | A flag which indicates whether any signal handlers will be installed
during startup. This includes handlers for SIGCHLD to monitor child
processes, and SIGINT, SIGTERM, and SIGBREAK to stop the reactor.
(type: bool
) |
Method | startRunning | Extend the base implementation in order to remember whether signal handlers should be installed later. |
Method | run | Undocumented |
Method | mainLoop | Undocumented |
Method | _handleSignals | Install the signal handlers for the Twisted event loop. |
Method | _handleSigchld | Reap all processes on SIGCHLD. |
Method | _reallyStartRunning | Extend the base implementation by also installing signal handlers, if
self._installSignalHandlers is true.
|
Reap all processes on SIGCHLD.
This gets called on SIGCHLD. We do no processing inside a signal handler, as the calls we make here could occur between any two python bytecode instructions. Deferring processing to the next eventloop round prevents us from violating the state constraints of arbitrary classes.Parameters | installSignalHandlers | A flag which, if set, indicates that handlers for a number of
(implementation-defined) signals should be installed during startup.
(type: bool
) |
self._installSignalHandlers
is true.