Конкурентность — "От нуля до уровня Python-разработчика"

От основ параллелизма до продвинутых инструментов конкурентности в Python: вы разберётесь в потоках, процессах и асинхронности, научитесь писать эффективный код, использовать threading, multiprocessing и asyncio.
Поймёте, как работает GIL, чем отличаются CPU-bound и I/O-bound задачи, освоите примитивы синхронизации,…
Начальный уровень
Часть
1 программы →

Чему вы научитесь

  • Понимать разницу между конкурентностью и параллелизмом, CPU-bound и I/O-bound задачами.
  • Разбираться в модели выполнения Python и работе GIL.
  • Использовать потоки (threading) и управлять ими безопасно.
  • Применять примитивы синхронизации: Lock, Semaphore, Event, Condition.
  • Организовывать обмен данными между потоками с помощью Queue.
  • Работать с процессами (multiprocessing) и разделять ресурсы через Pipe, Manager, shared_memory.
  • Создавать пулы процессов и управлять задачами с map, apply_async.
  • Писать асинхронный код с asyncio, использовать async, await, Task, TaskGroup.
  • Работать с тайм-аутами, отменой задач и структурированной конкурентностью.
  • Выбирать подходящий механизм конкурентности под задачу и проектировать устойчивые системы.

О курсе

Курс последовательно ведёт от базовых принципов конкурентности до продвинутых инструментов, которые Python-разработчики используют для ускорения и масштабирования приложений.

  1. Сначала вы разберётесь, что такое конкурентность, параллелизм, I/O-bound и CPU-bound задачи, а также как работает GIL в CPython.

  2. Затем освоите потоки (threading): запуск, управление, синхронизацию с помощью Lock, Semaphore, Event и безопасный обмен данными через Queue.

  3. Далее перейдёте к процессам (multiprocessing) — изоляции, обмену данными (Pipe, Manager, shared_memory), пулам процессов и способам обработки ошибок.

  4. Заключительная часть посвящена асинхронности (asyncio): корутинам, задачам, TaskGroup, тайм-аутам, отмене и примитивам синхронизации.

Формат — короткие объяснения → визуальные схемы → практика и тесты. Вы сразу закрепляете концепции на реальных примерах и учитесь уверенно управлять потоками, процессами и асинхронными задачами.

Для кого этот курс

Python-разработчикам, которые хотят глубже понять конкурентность и оптимизировать свой код. Тем, кто работает с вводом-выводом, сетевыми запросами или вычислительными задачами. Бэкенд-разработчикам, строящим быстрые и масштабируемые приложения. QA-инженерам и DevOps — для понимания многопоточных сценариев и нагрузки. Студентам и энтузиастам, желающим разобраться, как Python управляет потоками, процессами и задачами.

Начальные требования

✅ Базовое знание Python: переменные, функции, модули, работа со стандартной библиотекой.

✅ Понимание циклов, условий и обработки ошибок.

✅ Желательно опыт написания простых скриптов или работы с сетевыми/ввод-вывод задачами.

Наши преподаватели

Как проходит обучение

✅ Теория объясняется простым языком и закрепляется практическими примерами.

✅ Каждый модуль содержит интерактивные задачи и тесты.

✅ Возможность обсуждать решения и обмениваться опытом с другими участниками.

✅ По завершении курса вы сможете уверенно писать конкурентный код

Программа курса

загружаем...

Входит в 1 программу

  •    
     
     

Что вы получаете

  • ✅ Понимание ключевых моделей конкурентности: потоки, процессы, асинхронность.
  • ✅ Навыки написания безопасного и эффективного параллельного кода.
  • ✅ Освоение threading, multiprocessing и asyncio в реальных сценариях.
  • ✅ Умение выбирать правильный подход под задачу (I/O vs CPU).
  • ✅ Глубокое понимание работы GIL и производительности Python.
  • ✅ Практику, близкую к профессиональной разработке.

Часто задаваемые вопросы

Расскажите о курсе друзьям

Price: Бесплатно