Сообщить об ошибке.

Краткий обзор раздела: Модуль multiprocessing в Python, параллельная обработка без GIL

Содержание с кратким описанием:

ОБЗОР: Модуль multiprocessing в Python, параллельная обработка без GIL.
Модуль многопроцессорной обработки данных предлагает как локальную, так и удаленную параллельную обработку данных, эффективно обходя глобальную блокировку интерпретатора и используя ядра процессора вместо потоков. Он работает как под Unix, так и под Windows.
Получение сведений о процессах, модуль multiprocessing в Python.
В разделе рассмотрены функции модуля multiprocessing, при помощи которых можно узнать различные сведения о рабочих процессах, запущенных из программы. Примеры использования и применение.
Класс Process() модуля multiprocessing в Python.
Класс Process() модуля multiprocessing запускает вызываемый объект на исполнение, который будет выполняется в отдельном процессе/ядре процессора. Общий пример создания процессов с примерами использования основных методов.
Класс Pool() модуля multiprocessing в Python.
Класс Pool() модуля multiprocessing создает объект, управляющий пулом рабочих процессов, в который могут быть отправлены задания. Пул рабочих процессов поддерживает асинхронное выполнение задач с тайм-аутами и обратными вызовами и имеет параллельную реализацию. Примеры и тесты методов.
Класс Queue() модуля multiprocessing в Python.
Модуль multiprocessing определяет три вида очередей Queue, SimpleQueue и JoinableQueue - это очереди FIFO с несколькими производителями и несколькими потребителями, смоделированные на основе обычной многопоточной очереди FIFO queue.Queue модуля стандартной библиотеки queue.
Класс Pipe() модуля multiprocessing в Python.
Класс Pipe() модуля multiprocessing возвращает парный кортеж (conn1, conn2), состоящий из объектов Connection, представляющих концы одного канала. Представлены примеры создания канала Pipe и использования методов объекта Connection
Примитивы синхронизации процессов модуля multiprocessing в Python.
В разделе рассмотрены следующие блокировки и примитивы синхронизации модуля multiprocessing: Lock(), RLock(), Barrier(), Semaphore(), BoundedSemaphore(), Condition(), Event(), а так же их сходство и различие с модулем threading.
Объекты Value() и Array() модуля multiprocessing в Python.
Можно создавать общие объекты, используя общую память, которая может быть унаследована дочерними процессами. Такими объектами могут создавать классы multiprocessing.Value() и multiprocessing.Array()
Класс BaseManager() модуля multiprocessing.managers в Python.
Класс BaseManager() модуля multiprocessing.managers позволяет создать и запустить сервер диспетчера на одной машине и заставить клиентов использовать его с других машин, а так же пользоваться общими, зарегистрированные в нем ресурсами, классами и функциями.
Класс Manager() модуля multiprocessing в Python.
Менеджеры предоставляют способ создания данных, которые могут совместно использоваться разными процессами. Объект-менеджер управляет серверным процессом, который управляет общими объектами. Другие процессы могут получить доступ к общим объектам с помощью прокси.
Модуль multiprocessing.shared_memory в Python.
Модуль multiprocessing.shared_memory предоставляет класс SharedMemory для выделения и управления общей памятью, к которой обращается один или несколько процессов на многоядерной или симметричной многопроцессорной машине (SMP).
Прокси-объекты менеджера, модуля multiprocessing в Python.
Прокси-объекты создаются менеджерами процесса multiprocessing.Manager(). Прокси-объект - это объект, который ссылается на общий объект, который (предположительно) живет в другом процессе. Общий объект называется референтом прокси. Один и тот же референт может иметь несколько прокси-объектов.
Логирование/ведение журнала процессов в модуле multiprocessing в Python.
В модуле multiprocessing "из коробки" доступна некоторая поддержка логирования/ведения журнала процессов. Модуль logging не использует разделяемые блокировки процесса, поэтому, в зависимости от типа обработчика, сообщения от разных процессов могут смешиваться.
Ошибки и исключения, определяемые модулем multiprocessing в Python.
В разделе рассмотрены все ошибки и исключения, определяемые модулем multiprocessing. Это ProcessError, BufferTooShort, AuthenticationError, TimeoutError.