mirror of
https://github.com/python/cpython.git
synced 2025-07-12 05:45:15 +00:00
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.
This commit is contained in:
parent
d0d64ad1f5
commit
f22cc69b01
9 changed files with 209 additions and 124 deletions
|
@ -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"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue