Issue 36368: server process of shared_memory shuts down if KeyboardInterrupt (original) (raw)

When starting a SharedMemoryManager in an interactive session, any KeyboardInterrupt event will be transmitted to the (sub)process running the shared memory server, which causes the Manager to be unusable thereafter:

from multiprocessing.managers import SharedMemoryManager smm = SharedMemoryManager() smm.start() start typing something wrong KeyboardInterrupt sl = smm.ShareableList(range(10)) Traceback (most recent call last): File "", line 1, in File "/home/pierreglaser/repos/cpython/Lib/multiprocessing/managers.py", line 1342, in ShareableList with self._Client(self._address, authkey=self._authkey) as conn: File "/home/pierreglaser/repos/cpython/Lib/multiprocessing/connection.py", line 502, in Client c = SocketClient(address) File "/home/pierreglaser/repos/cpython/Lib/multiprocessing/connection.py", line 629, in SocketClient s.connect(address) FileNotFoundError: [Errno 2] No such file or directory

I suggest ignoring SIGINT in the server process.