Commit 87dc4d61 authored by Raymond Hettinger's avatar Raymond Hettinger

Issue 14976: Note that the queue module is not designed to protect against reentrancy

parent 7b3b3dc8
...@@ -22,6 +22,8 @@ the first retrieved (operating like a stack). With a priority queue, ...@@ -22,6 +22,8 @@ the first retrieved (operating like a stack). With a priority queue,
the entries are kept sorted (using the :mod:`heapq` module) and the the entries are kept sorted (using the :mod:`heapq` module) and the
lowest valued entry is retrieved first. lowest valued entry is retrieved first.
Internally, the module uses locks to temporarily block competing threads;
however, it is not designed to handle reentrancy within a thread.
The :mod:`queue` module defines the following classes and exceptions: The :mod:`queue` module defines the following classes and exceptions:
...@@ -186,11 +188,6 @@ Example of how to wait for enqueued tasks to be completed:: ...@@ -186,11 +188,6 @@ Example of how to wait for enqueued tasks to be completed::
t.join() t.join()
.. note::
The :mod:`queue` module is not safe for use from :mod:`signal` handlers as
it uses :mod:`threading` locks.
.. seealso:: .. seealso::
Class :class:`multiprocessing.Queue` Class :class:`multiprocessing.Queue`
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment