Сопрограммы (corutines) в Python
Содержание
Предупреждение
Последний раз данная статья обновлялась 27.04.2022, информация может быть устаревшей.
Список вопросов к Python собеседованию
Сопрограммы – это особый тип функций, которые сознательно передают управление вызывающему объекту, но они не заканчивают свой контекст в процессе, поддерживая его в состоянии ожидания.
Сопрограмма сама решает, когда перенаправить flow в другое место (например, в другую сопрограмму). И это позволяет строить красивые разветвленные деревья обработки потоков данных, реализовывать MapReduce, возможно прокидывать текущие байты через сокет на другую ноду. Более того, сопрограммы могут быть фактически реализованы абсолютно на любом языке.
What is a Coroutine Anyway? (перевод)
Использование send(), throw() и close() в генераторах Python
О стандарте можно почитать тут - PEP342