Содержание пакета (3 курса)
1. Асинхронность в Python: от новичка до эксперта 5.00
Введение
2 урока
1.
Приветствие!
↗
2.
О курсе и особенностях тестирующей системы
↗
Основы асинхронного программирования
11 уроков
1.
Основные определения
↗
2.
Виды операций и область применения
↗
3.
Переключение потока выполнения
↗
4.
Генераторы и корутины ч.1
↗
5.
Генераторы и корутины ч.2
↗
6.
Файлы, сокеты и блокирующие операции ввода-вывода
↗
7.
Операционные системы и контроль IO-bound задач, ч.1
↗
8.
Операционные системы и контроль IO-bound задач, ч.2
↗
9.
Асинхронное программирование на коллбэках
↗
10.
Асинхронное программирование на генераторах
↗
11.
Эпилог
↗
Библиотека asyncio
25 уроков
1.
Детали пазла
↗
2.
Awaitables объекты, ч.1
↗
3.
Awaitables объекты, ч.2
↗
4.
Runners и локальный контекст значений. Сontextvars, ч.1
↗
5.
Runners и локальный контекст значений. Сontextvars, ч.2
↗
6.
Задачи Tasks. Работа с коллбэками
↗
7.
Задачи Tasks. gather и TaskGroup
↗
8.
Нетерпеливый старт задач eager_start и uvloop
↗
9.
Задачи Tasks. Исключения
↗
10.
Задачи Tasks. Исключения gather и TaskGroup
↗
11.
Задачи Tasks. Примитивы ожидания
↗
12.
Задачи Tasks. Таймауты/таймеры
↗
13.
Работа с сетевыми соединениями. Streams
↗
14.
Запуск блокирующих операций с использованием потоков
↗
15.
Запуск блокирующих операций с использованием пула процессов
↗
16.
Запуск блокирующих операций с помощью пула интерпретаторов
↗
17.
Асинхронный менеджер контекста
↗
18.
Асинхронный итератор
↗
19.
Асинхронные очереди
↗
20.
Асинхронные примитивы синхронизации. Lock
↗
21.
Асинхронные примитивы синхронизации. Event и Condition
↗
22.
Асинхронные примитивы синхронизации. Semaphore и Barrier
↗
23.
Асинхронная работа с субпроцессами
↗
24.
Разбор тестовых задач и примеры решений
↗
25.
Эпилог
↗
Низкоуровневая работа с asyncio
4 урока
1.
Back to the Future
↗
2.
Работа с циклом событий. Планирование обратных вызовов
↗
3.
Реализации событийных циклов. Очередь коллбэков
↗
4.
Реализации событийных циклов. Мониторинг I/O-операций
↗
Асинхронная работа с БД на примере PostgreSQL и asyncpg
4 урока
1.
Введение. Архитектура СУБД
↗
2.
Установка и настройка
↗
3.
Подключение и работа с запросами
↗
4.
Пул соединений. Connection Pool
↗
Последний подвиг
2 урока
1.
Учебный проект: агрегация рыночных данных III
↗
2.
Заключение
↗
2. Многопоточность в Python: от новичка до эксперта 5.00
Основные понятия
3 урока
1.
Введение
↗
2.
Основные определения
↗
3.
Реализация и ограничения в Python
↗
Многопоточность. Модуль threading
24 урока
1.
Библиотека threading. Поток. Создание потоков. ч.1
↗
2.
Библиотека threading. Поток. Создание потоков. ч.2
↗
3.
Перехват исключений, трассировка, профилирование
↗
4.
Поток-таймер
↗
5.
Переопределение потока
↗
6.
Взаимодействие потоков. Очередь queue. ч.1
↗
7.
Взаимодействие потоков. Очередь queue. ч.2
↗
8.
Локальное хранилище
↗
9.
Синхронизация потоков. Базовый примитив
↗
10.
Синхронизация потоков. Классификация
↗
11.
Синхронизация потоков. Семафор и Барьер
↗
12.
Синхронизация потоков. Событие
↗
13.
Синхронизация потоков. Условная переменная
↗
14.
Пул потоков. ч.1
↗
15.
Пул потоков. ч.2
↗
16.
Пул потоков. ч.3
↗
17.
Пул интерпретаторов. Многопоточные параллельные вычисления
↗
18.
Создание и использование субинтерпретаторов.
↗
19.
Отключение GIL. free-threaded build интерпретаторы
↗
20.
Ускоряем многопоточные расчеты, используя NumPy, Numba и Cython
↗
21.
Учебный проект: агрегация рыночных данных
↗
22.
Разбор тестовых задач и примеры решений
↗
23.
Заключение
↗
24.
Post game
↗
Отладка многопоточных программ
3 урока
1.
Работа с исключениями
↗
2.
Traceback исключений
↗
3.
Трассировка и профилирование
↗
Пул потоков. Модуль concurrent.futures
3 урока
1.
Пул потоков. ч.1
↗
2.
Пул потоков. ч.2
↗
3.
Пул потоков. ч.3
↗
Финал
3 урока
1.
Разбор тестовых задач и примеры решений
↗
2.
Заключение
↗
3.
Post game
↗
Многопоточные параллельные вычисления
4 урока
1.
Пул интерпретаторов. Многопоточные параллельные вычисления
↗
2.
Создание и использование субинтерпретаторов.
↗
3.
Отключение GIL. free-threaded build интерпретаторы
↗
4.
Ускоряем многопоточные расчеты, используя NumPy, Numba и Cython
↗
3. Многопроцессность в Python: от новичка до эксперта 4.86
Основные понятия
2 урока
1.
Введение
↗
2.
Основные определения
↗
Многопроцессность. Модуль multiprocessing
15 уроков
1.
Библиотека multiprocessing. Процесс. ч.1
↗
2.
Библиотека multiprocessing. Процесс. ч.2
↗
3.
Переопределение процесса
↗
4.
Взаимодействие процессов. Разделяемая память.
↗
5.
Взаимодействие процессов. Менеджеры.
↗
6.
Взаимодействие процессов. Очереди.
↗
7.
Взаимодействие процессов. Каналы.
↗
8.
Объекты синхронизации процессов
↗
9.
Пул процессов ч.1
↗
10.
Пул процессов ч.2
↗
11.
Логирование. Рекомендации при использовании multiprocessing
↗
12.
Учебный проект: агрегация рыночных данных II
↗
13.
Разбор тестовых задач и примеры решений.
↗
14.
Заключение
↗
15.
Post game
↗