diff options
| author | Barry Warsaw | 2017-01-28 19:04:50 +0000 |
|---|---|---|
| committer | Barry Warsaw | 2017-01-28 19:04:50 +0000 |
| commit | 064435abdfd26a77ea1e3c665156ff468ec52ec0 (patch) | |
| tree | 3540c86b26ab6d8031bf14a2d655966b20cb8f31 /src/mailman/interfaces/runner.py | |
| parent | ba08609f28f7193a020a57e90bb887d59f1543bc (diff) | |
| parent | 91e99645ca80185a30a84744cef441bba96cf6a8 (diff) | |
| download | mailman-064435abdfd26a77ea1e3c665156ff468ec52ec0.tar.gz mailman-064435abdfd26a77ea1e3c665156ff468ec52ec0.tar.zst mailman-064435abdfd26a77ea1e3c665156ff468ec52ec0.zip | |
Diffstat (limited to 'src/mailman/interfaces/runner.py')
| -rw-r--r-- | src/mailman/interfaces/runner.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/mailman/interfaces/runner.py b/src/mailman/interfaces/runner.py index 12a7e49ad..f85c759c1 100644 --- a/src/mailman/interfaces/runner.py +++ b/src/mailman/interfaces/runner.py @@ -34,6 +34,19 @@ class RunnerCrashEvent: @public +class RunnerInterrupt(Exception): + """A runner received a system call interrupting signal. + + PEP 475 automatically, and at the C layer, retries system calls such as + time.sleep(). This can mean runners with long sleeps in their _snooze() + method won't actually exit. This exception is always raised in Mailman's + runner signal handlers to prevent this behavior. Runners that implement + their own .run() method must be prepared to handle this, usually by + ignoring it. + """ + + +@public class IRunner(Interface): """The runner.""" |
