diff options
| author | Charles-François Natali <cf.natali@gmail.com> | 2013-12-05 21:47:19 (GMT) |
|---|---|---|
| committer | Charles-François Natali <cf.natali@gmail.com> | 2013-12-05 21:47:19 (GMT) |
| commit | 74e7cf3f4664204927b2bd3dd9facc2ac7649715 (patch) | |
| tree | fd1db7f1957df6a66bbe25a59c6b488a29e482f3 /Lib/asyncio/unix_events.py | |
| parent | 0a956f1aec601a976234011fda075006681bdb82 (diff) | |
| download | cpython-74e7cf3f4664204927b2bd3dd9facc2ac7649715.zip cpython-74e7cf3f4664204927b2bd3dd9facc2ac7649715.tar.gz cpython-74e7cf3f4664204927b2bd3dd9facc2ac7649715.tar.bz2 | |
Issue #19850: asyncio: Set SA_RESTART when registering a signal handler to
limit EINTR occurrences.
Diffstat (limited to 'Lib/asyncio/unix_events.py')
| -rw-r--r-- | Lib/asyncio/unix_events.py | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/Lib/asyncio/unix_events.py b/Lib/asyncio/unix_events.py index b611efd..eb3fb9f 100644 --- a/Lib/asyncio/unix_events.py +++ b/Lib/asyncio/unix_events.py @@ -74,6 +74,8 @@ class _UnixSelectorEventLoop(selector_events.BaseSelectorEventLoop): try: signal.signal(sig, self._handle_signal) + # Set SA_RESTART to limit EINTR occurrences. + signal.siginterrupt(sig, False) except OSError as exc: del self._signal_handlers[sig] if not self._signal_handlers: |
