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

contextvars: номер на рукаве

middle-senior~35 мин

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

Журнал краулера за ночь: двести строк fetch, двести строк ok, десяток fail. Задачи шли вперемешку, и строки легли так же. Какой ok ответ на какой fetch, понять нельзя. Узор третий час сидит над журналом Архива с той же бедой: запросы Призрака там тоже вперемешку.

В прошлом уроке краулер научился уносить тяжёлый разбор в поток и не морозить цикл. Теперь у него задачи и потоки сразу, и каждой строке журнала нужно знать две вещи: какой это запуск и какой запрос внутри него. Номер аргументом придётся протащить через все сигнатуры, а глобальная переменная врёт, как только задач больше одной. Сегодня ты узнаешь, где Python хранит «номер на рукаве» и как он переходит из задачи в задачу и из цикла в поток.

урок из курса

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

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