Issue #23400: Add notes about the sem_open support of the host OS to

"Pipes and Queues" and "Synchronization between processes" subsections.

Patch by Davin Potts.
This commit is contained in:
Berker Peksag 2015-04-08 18:12:53 +03:00
parent ce29e87e6f
commit 928b3fff8a
1 changed files with 17 additions and 8 deletions

View File

@ -160,14 +160,6 @@ that only one process prints to standard output at a time::
Without using the lock output from the different processes is liable to get all Without using the lock output from the different processes is liable to get all
mixed up. mixed up.
.. warning::
Some of this package's functionality requires a functioning shared semaphore
implementation on the host operating system. Without one, the
:mod:`multiprocessing.synchronize` module will be disabled, and attempts to
import it will result in an :exc:`ImportError`. See
:issue:`3770` for additional information.
Sharing state between processes Sharing state between processes
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@ -659,6 +651,15 @@ For an example of the usage of queues for interprocess communication see
immediately without waiting to flush enqueued data to the immediately without waiting to flush enqueued data to the
underlying pipe, and you don't care about lost data. underlying pipe, and you don't care about lost data.
.. note::
This class's functionality requires a functioning shared semaphore
implementation on the host operating system. Without one, the
functionality in this class will be disabled, and attempts to
instantiate a :class:`Queue` will result in an :exc:`ImportError`. See
:issue:`3770` for additional information. The same holds true for any
of the specialized queue types listed below.
.. class:: multiprocessing.queues.SimpleQueue() .. class:: multiprocessing.queues.SimpleQueue()
@ -965,6 +966,14 @@ object -- see :ref:`multiprocessing-managers`.
This differs from the behaviour of :mod:`threading` where SIGINT will be This differs from the behaviour of :mod:`threading` where SIGINT will be
ignored while the equivalent blocking calls are in progress. ignored while the equivalent blocking calls are in progress.
.. note::
Some of this package's functionality requires a functioning shared semaphore
implementation on the host operating system. Without one, the
:mod:`multiprocessing.synchronize` module will be disabled, and attempts to
import it will result in an :exc:`ImportError`. See
:issue:`3770` for additional information.
Shared :mod:`ctypes` Objects Shared :mod:`ctypes` Objects
~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~