Spec-Zone.ru › Python 3.8

Конкурентное выполнение

Модули, описанные в этой главе, обеспечивают поддержку одновременного выполнения кода. Выбор подходящего инструмента будет зависеть от задачи (привязка к процессору или вводу-выводу) и предпочтительного стиля разработки (событийно-управляемое кооперативное многозадачность или прерывистая многозадачность). Вот обзор:

  • threading — Параллелизм на основе потоков
    • Данные, локальные для потока
    • Объекты потоков
    • Объекты блокировок
    • Объекты блокировок с повторным входом
    • Объекты условных переменных
    • Объекты семафоров
      • Semaphore Пример
    • Объекты событий
    • Объекты таймеров
    • Объекты барьеров
    • Использование блокировок, условных переменных и семафоров в операторе with
  • multiprocessing — Параллелизм на основе процессов
    • Введение
      • Класс Process
      • Контексты и методы запуска
      • Обмен объектами между процессами
      • Синхронизация между процессами
      • Обмен состоянием между процессами
      • Использование пула рабочих процессов
    • Справочник
      • Process и исключения
      • Каналы и очереди
      • Разное
      • Объекты соединений
      • Примитивы синхронизации
      • Объекты ctypes
        • Модуль multiprocessing.sharedctypes
      • Менеджеры
        • Настраиваемые менеджеры
        • Использование удалённого менеджера
      • Объекты-прокси
        • Очистка
      • Пулы процессов
      • Слушатели и клиенты
        • Форматы адресов
      • Ключи аутентификации
      • Ведение журнала
      • Модуль multiprocessing.dummy
    • Рекомендации по программированию
      • Все методы запуска
      • Методы запуска spawn и forkserver
    • Примеры
  • multiprocessing.shared_memory — Предоставляет общую память для прямого доступа между процессами
  • Пакет concurrent
  • concurrent.futures — Запуск параллельных задач
    • Объекты исполнителей
    • ThreadPoolExecutor
      • Пример ThreadPoolExecutor
    • ProcessPoolExecutor
      • Пример ProcessPoolExecutor
    • Объекты Future
    • Функции модуля
    • Классы исключений
  • subprocess — Управление дочерними процессами
    • Использование модуля subprocess
      • Часто используемые аргументы
      • Конструктор Popen
      • Исключения
    • Рекомендации по безопасности
    • Объекты Popen
    • Вспомогательные функции Popen для Windows
      • Константы Windows
    • Старый высокоуровневый API
    • Замена устаревших функций модулем subprocess
      • Замена подстановки команд оболочки /bin/sh
      • Замена конвейера оболочки
      • Замена os.system()
      • Замена семейства os.spawn
      • Замена os.popen(), os.popen2(), os.popen3()
      • Замена функций из модуля popen2
    • Устаревшие функции вызова оболочки
    • Примечания
      • Преобразование последовательности аргументов в строку в Windows
  • sched — Планировщик событий
    • Объекты планировщиков
  • queue — Синхронизированный класс очереди
    • Объекты очереди
    • Объекты SimpleQueue
  • contextvars — Переменные контекста
    • Переменные контекста
    • Управление контекстом вручную
    • Поддержка asyncio

Ниже приведены вспомогательные модули для некоторых из вышеперечисленных сервисов:

  • _thread — API потоков низкого уровня
  • _dummy_thread — Подстановка для модуля _thread
  • dummy_threading — Подстановка для модуля threading

© 2001–2022 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.8/library/concurrency.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API