Skip to content

Commit 5b8db62

Browse files
committed
Slightly optimize Pool._taskqueue_buffersize_semaphores terminate
1 parent 35e93a9 commit 5b8db62

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

Lib/multiprocessing/pool.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -726,9 +726,10 @@ def _terminate_pool(cls, taskqueue, inqueue, outqueue, pool, change_notifier,
726726

727727
task_handler._state = TERMINATE
728728
# Release all semaphores to wake up task_handler to stop.
729-
for job_id, sema in tuple(taskqueue_buffersize_semaphores.items()):
730-
taskqueue_buffersize_semaphores.pop(job_id, None)
731-
sema.release()
729+
for job_id in tuple(taskqueue_buffersize_semaphores.keys()):
730+
sema = taskqueue_buffersize_semaphores.pop(job_id, None)
731+
if sema is not None:
732+
sema.release()
732733

733734
util.debug('helping task handler/workers to finish')
734735
cls._help_stuff_finish(inqueue, task_handler, len(pool))

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy