Курс на Stepik
Обложка курса «Асинхронность в Python» на Stepik
Бесплатно

Асинхронность в Python 0.000

Открыть на
STEPIK.ORG

Курс посвящен асинхронному программированию на Python с использованием библиотеки asyncio. На курсе рассмотрим все основные возможности этой библиотеки. Посмотрим на исходный код библиотеки и самостоятельно реализуем часть функционала, который предоставляет asyncio. Рассмотрим базовые возможности библиотеки aiohttp.

Показатель Текущие показатели Рост
Значение 🏆 Рейтинг 3 дн 7 дн 30 дн
Количество учеников на курсе «Асинхронность в Python»Учеников на курсе 11
Сертификаты, выданные на курсе «Асинхронность в Python»Сертификатов выдано 0
Отзывы о курсе «Асинхронность в Python»Отзывов получено 0
Рейтинг курса «Асинхронность в Python»Рейтинг курса 0.000
Уроки в курсе «Асинхронность в Python»Количество уроков 52
Время прохождения курса «Асинхронность в Python»Время прохождения курса
Обновления курса «Асинхронность в Python»Обновления курса
Дата публикации курса «Асинхронность в Python»Дата публикации курса
Последнее обновление курса «Асинхронность в Python»Последнее обновление
Сложность normal

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

Разделы в курсе «Асинхронность в Python» 15 разделов Уроки в курсе «Асинхронность в Python» 52 урока Время прохождения курса «Асинхронность в Python» 0 ч. Последнее обновление курса «Асинхронность в Python» обн. 1 год назад

Асинхронность. Основные понятия

10 уроков
1. Синхронное и асинхронное выполнение программы
2. Многозадачность. Кооперативная и вытесняющая.
3. IO-bound и CPU-bound задачи
4. Сокеты
5. Селектор
6. Процессы
7. Потоки
8. Глобальная блокировка интерпретатора - GIL
9. Управление памятью в python
10. Состояние гонки

Итератор, генератор и корутина

3 урока
1. Итератор
2. Генератор
3. Корутина

Объекты Awaitable, Future и Task

4 урока
1. Контекстные переменные - Context и ContextVar
2. Объект Awaitable
3. Объект Future
4. Объект Task

Событийный цикл

2 урока
1. Как работает событийный цикл
2. Получение событийного цикла

Создание задач. Сокеты в asyncio

2 урока
1. Создание задач с помощью create_task, ensure_future
2. Сокеты в asyncio

Запуск приложения и обработка исключений

2 урока
1. Запуск асинхронного приложения - функция asyncio.run
2. Обработка исключений в асинхронном коде

Ограничение времени выполнения задачи

3 урока
1. Инициализация аргументов функции
2. Ограничение времени ожидания задачи - функция asyncio.wait_for
3. Защита от отмены выполнения задачи - функция asyncio.shield

Асинхронный контекстный менеджер

1 урок
1. Асинхронный контекстный менеджер и блок async with

Завершение работы асинхронного приложения

2 урока
1. Запуск корутины - метод run_until_complete
2. Корректное завершение работы асинхронного приложения

Асинхронный запуск нескольких корутин

6 уроков
1. Декоратор time_excution
2. Конструкция async for
3. Асинхронный запуск нескольких корутин. Функция gather
4. Асинхронный запуск нескольких корутин. Функция as_completed
5. Асинхронный запуск нескольких корутин. Функция wait
6. Псевдо-асинхронный код

Запуск синхронной функции в событийном цикле

3 урока
1. Запуск функции через таймаут - call_later
2. Запуск функции так скоро, насколько это возможно - call_soon
3. Запуск функции в определенное время - метод call_at

Запуск функции в отдельном процессе и потоке

4 урока
1. Запуск функции - метод run_in_executor
2. ThreadPoolExecutor
3. ProcessPoolExecutor
4. Запуск функции в отдельном потоке - asyncio.to_thread

Асинхронная очередь

1 урок
1. Асинхронная очередь

Синхронизация

6 уроков
1. Состояние гонки при асинхронном выполнении задач
2. Примитив Lock
3. Примитив Semaphore
4. Примитив BoundedSemaphore
5. Примитив Event
6. Примитив Condition

Библиотека aiohttp

3 урока
1. Основные возможности библиотеки aiohttp
2. Отправка и прием файлов
3. WebSocket