Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit cd77815

Browse files
committed
Issue #11836: document and expose multiprocessing.SimpleQueue
2 parents 91a8741 + 5cb522c commit cd77815

2 files changed

Lines changed: 26 additions & 2 deletions

File tree

Doc/library/multiprocessing.rst

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -483,7 +483,7 @@ primitives like locks.
483483
For passing messages one can use :func:`Pipe` (for a connection between two
484484
processes) or a queue (which allows multiple producers and consumers).
485485

486-
The :class:`Queue` and :class:`JoinableQueue` types are multi-producer,
486+
The :class:`Queue`, :class:`SimpleQueue` and :class:`JoinableQueue` types are multi-producer,
487487
multi-consumer FIFO queues modelled on the :class:`queue.Queue` class in the
488488
standard library. They differ in that :class:`Queue` lacks the
489489
:meth:`~queue.Queue.task_done` and :meth:`~queue.Queue.join` methods introduced
@@ -629,6 +629,23 @@ For an example of the usage of queues for interprocess communication see
629629
exits -- see :meth:`join_thread`.
630630

631631

632+
.. class:: SimpleQueue()
633+
634+
It is a simplified :class:`Queue` type, very close to a locked :class:`Pipe`.
635+
636+
.. method:: empty()
637+
638+
Return ``True`` if the queue is empty, ``False`` otherwise.
639+
640+
.. method:: get()
641+
642+
Remove and return an item from the queue.
643+
644+
.. method:: put(item)
645+
646+
Put *item* into the queue.
647+
648+
632649
.. class:: JoinableQueue([maxsize])
633650

634651
:class:`JoinableQueue`, a :class:`Queue` subclass, is a queue which

Lib/multiprocessing/__init__.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
'Manager', 'Pipe', 'cpu_count', 'log_to_stderr', 'get_logger',
4949
'allow_connection_pickling', 'BufferTooShort', 'TimeoutError',
5050
'Lock', 'RLock', 'Semaphore', 'BoundedSemaphore', 'Condition',
51-
'Event', 'Queue', 'JoinableQueue', 'Pool', 'Value', 'Array',
51+
'Event', 'Queue', 'SimpleQueue', 'JoinableQueue', 'Pool', 'Value', 'Array',
5252
'RawValue', 'RawArray', 'SUBDEBUG', 'SUBWARNING',
5353
]
5454

@@ -223,6 +223,13 @@ def JoinableQueue(maxsize=0):
223223
from multiprocessing.queues import JoinableQueue
224224
return JoinableQueue(maxsize)
225225

226+
def SimpleQueue():
227+
'''
228+
Returns a queue object
229+
'''
230+
from multiprocessing.queues import SimpleQueue
231+
return SimpleQueue()
232+
226233
def Pool(processes=None, initializer=None, initargs=(), maxtasksperchild=None):
227234
'''
228235
Returns a process pool object

0 commit comments

Comments
 (0)