Параллельное выполнение¶
Модули, описанные в этой главе, обеспечивают поддержку параллельного выполнения кода. Выбор подходящего инструмента будет зависеть от выполняемой задачи (привязка к процессору или к вводу-выводам) и предпочтительного стиля разработки (управляемая событиями совместная многозадачность или превентивная многозадачность). Вот краткий обзор:
threading— Параллелизм на основе потоковmultiprocessing— Параллелизм на основе процессов- Вступление
- Ссылка
- Руководящие принципы программирования
- Примеры
multiprocessing.shared_memory— Общая память для прямого доступа между процессами- Пакет
concurrent concurrent.futures— Запуск параллельных задачsubprocess— Управление подпроцессамиsched— Планировщик событийqueue— Класс синхронизированной очередиcontextvars— Контекстные переменные
Ниже приведены модули поддержки для некоторых из вышеперечисленных сервисов: