Раздел 45 · Python backend: Тарбадель

Корутины и await

middle-senior~35 мин

без входаВойди, чтобы отмечать прогресс, вести заметки и решать задачи в редакторе. войти

Твой цикл из прошлого урока работает: задачи отдают ему Sleep, ReadWait и Spawn, он их исполняет и будит задачи вовремя. Но читать такой код тяжело. yield в одной строке значит «подожди секунду», в другой «верни мне номер задачи», в третьей «отдай значение». По тексту не видно, где курьер стоит, а где несёт посылку.

В Python у ожидания есть своё слово, await, и свой вид функций, async def. Сегодня ты увидишь, что внутри это тот же генератор, только с другой вывеской, посадишь async def на свой цикл и поймёшь, почему код с await сам по себе не становится быстрее ни на миллисекунду.

урок из курса

Урок из курса «Python backend: Тарбадель». Курс покупается один раз и остаётся навсегда: 500 ₽.

Оплата пока не подключена: премиум и курсы открываются промокодом.