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

Moderator
Команда форума
29 Мар 2020
302,989
1,589,774
113
#1
[Stepik] [Павел Хошев] Многопроцессорный Python (2025)


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




Курс погрузит вас в мир многопроцессорного программирования, от базовых понятий до экспертного уровня.

Этот курс, созданный двукратным лауреатом премии Stepik Awards, признан лучшим в номинации "Прорыв Года" и "Лучший платный курс". В рамках курса вы получите всесторонние знания о многопроцессорном программировании на Python.

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

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

Все навыки, которые вы освоите, подробно описаны в содержании курса.

Цель курса:

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

Почему стоит выбрать этот курс?

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

Особенности курса:

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

Что вас ждет на курсе?

В ходе курса вы будете выполнять задания, в которых создадите многопроцессорные приложения:

- Используя примитивы синхронизации (Lock, Semaphore, Event, Barrier и др.) для управления процессами и обмена данными.
- Применяя очереди и каналы для передачи данных между процессами.
- Используя пул процессов для распределения задач между ядрами процессора.
- Применяя менеджеры для организации общего пространства имен и управления ресурсами.

Готовы освоить все ресурсы процессора?

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

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

1. Введение
2. Основы модуля multiprocessing
3. Возврат данных из процесса
4. Примитивы синхронизации
5. Убийство процессов
6. Менеджеры
7. Пул процессов ProcessPoolExecutor
8. Пул процессов multiprocessing.Pool
9. Продвинутый уровень
10. Практика

Содержание курса:

1. Процессы и потоки
2. Глобальная блокировка интерпретатора GIL
3. Многозадачность в Python
4. Мультипроцессинг против многопоточности
5. Мультипроцессорное программирование в Python
6. Главный процесс
7. Дочерние процессы
8. Взаимодействие главного и дочерних процессов
9. Главный поток процесса
10. Получение процесса по имени
11. Как получить PID процесса
12. Получение количества ядер процессора
13. Статус и характеристики процесса
14. Как перезапустить процесс
15. Метод join()
16. Идиома if __name__ == '__main__'
17. Возврат данных из процесса
18. Возвращаем значение из процесса
19. multiprocessing.Value
20. multiprocessing.Array
21. multiprocessing.Pipe
22. multiprocessing.Pipe. Практика
23. multiprocessing.Queue
24. multiprocessing.SimpleQueue
25. multiprocessing.JoinableQueue
26. Примитивы синхронизации
27. Многопроцессорный Lock
28. Многопроцессорный RLock
29. Многопроцессорный Event
30. Многопроцессорный Semaphore
31. Многопроцессорная переменная Condition
32. Многопроцессорный Barrier
33. Убийство процессов
34. Остановка главного процесса дочерним
35. Убийство или завершение процесса
36. Убить процесс по PID
37. Как безопасно убить или завершить процесс
38. Завершение текущего процесса
39. Менеджеры
40. Что такое Manager
41. Менеджер с примитивами синхронизации и очередями
42. Общее пространство имен с помощью менеджера
43. Пользовательские менеджеры
44. Серверный процесс менеджера
45. Вложенные прокси-объекты у менеджера
46. Пул процессов ProcessPoolExecutor
47. Знакомство с пулом процессов
48. Отправка задач в пул процессов
49. Возможности объекта Future
50. Ожидание завершения задач, ч1
51. Ожидание завершения задач, ч2
52. Как добавить callback к задаче в ProcessPoolExecutor
53. map() против submit()
54. Настройка пула процессов
55. Обработка исключений при работе с пулом процессов
56. Примитивы синхронизации с пулом процессов
57. Как повторно выполнить неудачные задачи в ProcessPoolExecutor
58. Как работает ProcessPoolExecutor
59. Пул процессов multiprocessing.Pool
60. Пул процессов multiprocessing.Pool
61. Блокирующее выполнение одиночной задачи
62. Неблокирующее выполнение одиночной задачи
63. Блокирующая отправка группы задач в пул
64. Неблокирующая отправка группы задач в пул
65. Итеративная обработка задач
66. Какой метод выбрать?
67. Пользовательские процессы
68. Иерархия процессов и задач
69. Почему не стоит использовать только процессы?
70. Потоки в процессах
71. Рекомендации и предостережения
72. Практика
73. Решаем задачи

Курс включает:
- 69 уроков
- 397 тестов
- 116 интерактивных задач.

Подробнее:


Для просмотра содержимого вам необходимо авторизоваться

Скачать курс [Stepik] [Павел Хошев] Многопроцессорный Python (2025):


Для просмотра содержимого вам необходимо авторизоваться
 
Последнее редактирование модератором: