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