]> granicus.if.org Git - python/commitdiff
Issue #19850: asyncio: Set SA_RESTART when registering a signal handler to
authorCharles-François Natali <cf.natali@gmail.com>
Thu, 5 Dec 2013 21:47:19 +0000 (22:47 +0100)
committerCharles-François Natali <cf.natali@gmail.com>
Thu, 5 Dec 2013 21:47:19 +0000 (22:47 +0100)
limit EINTR occurrences.

Lib/asyncio/unix_events.py

index b611efd17d14171be8a0e512b423b653ed39a4dd..eb3fb9f91c080a4249b1c09fbfe697e6f5a79976 100644 (file)
@@ -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: