[Павел Хошев] Многопроцессорный Python (2025) [Stepik]

150 

Описание

[Павел Хошев] Многопроцессорный Python (2025) [Stepik]

Многопроцессорный Python [Stepik] [Павел Хошев]

[Павел Хошев] Многопроцессорный Python (2025) [Stepik]

Курс проведёт вас от основ до эксперта в многопроцессорном программировании.
Курс от двукратного лауреата премии Stepik Awards в престижных номинациях: «Прорыв Года» и «Лучший платный курс». Курс содержит все что вам нужно знать о multiprocessing в python.

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

  • Разбираться в основах многопроцессного и многопроцессорного программирования.
  • Создавать и управлять процессами с помощью Process, Pool, ProcessPoolExecutor и Manager.
  • Организовывать обмен данными между процессами с использованием Queue, Pipe, Value, Array и Manager.
  • Использовать примитивы синхронизации, такие как Lock, Semaphore, Event и Barrier.
  • Обрабатывать исключения в многопроцессных программах для повышения надёжности.
  • Применять знания на практике, оптимизируя задачи и ускоряя вычисления.
  • Находить и устранять ошибки в многопроцессном и многопроцессорном коде.
  • Экономить ресурсы системы, грамотно распределяя задачи между процессами.
  • Понимать многозадачность на практике и управлять одновременным выполнением задач.
  • Работать с большими проектами, применяя многопроцессорный и многопроцессный подходы.
  • Всё о навыках, которые вы получите, можно узнать в описании содержания курса.

Цель курса:
Мы научим вас, как использовать все ядра вашего процессора по максимуму, чтобы ускорять сложные вычисления и прокачивать производительность программ. А ещё вы сможете создавать мощные и масштабируемые приложения, которые легко справляются с большими объёмами данных и реальными нагрузками.

Почему стоит выбрать именно этот курс?
Если вы уже знакомы с основами Python и хотите научиться использовать потенциал современных процессоров, то этот курс именно для вас. Мы предоставляем четкую структуру, реальные примеры, и пошаговые задания, которые помогут вам освоить многопроцессное и многопроцессорное программирование на практике. Все темы объясняются доступно, с упором на прикладное использование. В дополнение к теоретическим знаниям, вы получите обширный практический опыт, который поможет вам сразу применять полученные навыки в своих проектах.

Особенности курса:
Практическая ориентация. Вы будете не только изучать теорию, но и выполнять реальные задачи, что поможет закрепить все изученные концепции.

  • Подробные примеры кода. Каждая тема сопровождается примерами, которые можно повторить, а затем применять в собственных проектах.
  • Гибкий подход. Учебный материал позволяет вам учиться в своем темпе, возвращаясь к сложным темам, если это необходимо.
  • Оперативные ответы на вопросы и комментарии. В процессе обучения вы не останетесь без поддержки: преподаватели курса всегда готовы ответить на ваши вопросы и прокомментировать сложные моменты.

Что нужно будет делать?
На протяжении курса вы будете выполнять задания, в которых создадите многопроцессорные приложения, используя:
Примитивы синхронизации, такие как Lock, Semaphore, Event, Barrier и др, для управления процессами и обмена данными между ними.

  • Очереди и каналы для передачи данных между процессами.
  • Пул процессов для распределения задач между ядрами процессора.
  • Менеджеры для организации общего пространства имен и управления ресурсами.

Готовы научиться использовать все ресурсы процессора?
Записывайтесь на курс и начните улучшать производительность своих программ уже сегодня!

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

  • Введение
  • Основы модуля multiprocessing
  • Возврат данных из процесса
  • Примитивы синхронизации
  • Убийство процессов
  • Менеджеры
  • Пул процессов ProcessPoolExecutor
  • Пул процессов multiprocessing.Pool
  • Продвинутый уровень
  • Практика
Программа курса:
Введение
  1. Содержание курса
  2. Введение
  3. Процессы и потоки
  4. Глобальная блокировка интерпретатора GIL
  5. Многозадачность в Python
  6. Мультипроцессинг против многопоточности
  7. Мультипроцессорное программирование в Python

Основы модуля multiprocessing

  1. Главный процесс
  2. Дочерние процессы
  3. Взаимодействие главного и дочерних процессов.
  4. Главный поток процесса
  5. Получение процесса по имени
  6. Как получить PID процесса
  7. Получение количества ядер процессора
  8. Статус и характеристики процесса
  9. Как перезапустить процесс
  10. Метод join()
  11. Идиома if __name__ == ‘__main__’

Возврат данных из процесса

  1. Возвращаем значение из процесса
  2. multiprocessing.Value
  3. multiprocessing.Array
  4. multiprocessing.Pipe
  5. multiprocessing.Pipe. Практика
  6. multiprocessing.Queue
  7. multiprocessing.SimpleQueue
  8. multiprocessing.JoinableQueue

Примитивы синхронизации

  1. Примитивы синхронизации
  2. Многопроцессорный Lock
  3. Многопроцессорный RLock
  4. Многопроцессорный Event
  5. Многопроцессорный Semaphore
  6. Многопроцессорная переменная Condition
  7. Многопроцессорный Barrier

Убийство процессов

  1. Остановка главного процесса дочерним
  2. Убийство или завершение процесса
  3. Убить процесс по PID
  4. Как безопасно убить или завершить процесс
  5. Завершение текущего процесса

Менеджеры

  1. Что такое Manager
  2. Менеджер с примитивами синхронизации и очередями
  3. Общее пространство имен с помощью менеджера
  4. Пользовательские менеджеры
  5. Серверный процесс менеджера
  6. Вложенные прокси-объекты у менеджера

Пул процессов ProcessPoolExecutor

  1. Знакомство с пулом процессов
  2. Отправка задач в пул процессов
  3. Возможности объекта Future
  4. Ожидание завершения задач, ч1
  5. Ожидание завершения задач, ч2
  6. Как добавить callback к задаче в ProcessPoolExecutor
  7. map() против submit()
  8. Настройка пула процессов
  9. Обработка исключений при работе с пулом процессов
  10. Примитивы синхронизации с пулом процессов
  11. Как повторно выполнить неудачные задачи в ProcessPoolExecutor
  12. Как работает ProcessPoolExecutor

Пул процессов multiprocessing.Pool

  1. Пул процессов multiprocessing.Pool
  2. Блокирующее выполнение одиночной задачи
  3. Неблокирующее выполнение одиночной задачи
  4. Блокирующая отправка группы задач в пул
  5. Неблокирующая отправка группы задач в пул
  6. Итеративная обработка задач
  7. Какой метод выбрать?

Продвинутый уровень

  1. Пользовательские процессы
  2. Иерархия процессов и задач
  3. Почему не стоит использовать только процессы?
  4. Потоки в процессах
  5. Рекомендации и предостережения

Практика

  1. Решаем задачи

В курс входят:

69 уроков / 397 тестов / 116 интерактивных задач.

Автор курса: Павел Хошев

Сайт продажника: https://stepik.org/course/190099/promo

Цена с продажника: 1740 руб.

У нас Вы можете приобрести всего за 150 руб.

Отзывы

Отзывов пока нет.

Будьте первым, кто оставил отзыв на “[Павел Хошев] Многопроцессорный Python (2025) [Stepik]”