From f22cc69b012f52882d434a5c44a004bc3aa5c33c Mon Sep 17 00:00:00 2001 From: Pierre Glaser Date: Fri, 10 May 2019 22:59:08 +0200 Subject: bpo-36867: Make semaphore_tracker track other system resources (GH-13222) The multiprocessing.resource_tracker replaces the multiprocessing.semaphore_tracker module. Other than semaphores, resource_tracker also tracks shared_memory segments. Patch by Pierre Glaser. --- Lib/multiprocessing/shared_memory.py | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'Lib/multiprocessing/shared_memory.py') diff --git a/Lib/multiprocessing/shared_memory.py b/Lib/multiprocessing/shared_memory.py index ebc8885876..184e36704b 100644 --- a/Lib/multiprocessing/shared_memory.py +++ b/Lib/multiprocessing/shared_memory.py @@ -113,6 +113,9 @@ class SharedMemory: self.unlink() raise + from .resource_tracker import register + register(self._name, "shared_memory") + else: # Windows Named Shared Memory @@ -231,7 +234,9 @@ class SharedMemory: called once (and only once) across all processes which have access to the shared memory block.""" if _USE_POSIX and self._name: + from .resource_tracker import unregister _posixshmem.shm_unlink(self._name) + unregister(self._name, "shared_memory") _encoding = "utf8" -- cgit v1.2.1