23 июля 2026, 16:00
В Python появятся стековые корутины в стиле Go за счет библиотеки Runloom


Сообщество независимых разработчиков представило открытую библиотеку Runloom. Инициатива внедряет стековые корутины в стиле языка Go в режим free-threaded Python 3.13t+ с отключенной глобальной блокировкой интерпретатора (GIL). Над инструментом работают пользователи GitHub, Reddit и Lobsters, однако к проекту уже проявили интерес инженеры из крупных технологических компаний, в том числе Cloudflare, Vercel и Hugging Face.
Технические особенности и архитектура
Runloom помогает эффективно обрабатывать высокие нагрузки, ограниченные операциями ввода-вывода. Обычно при обращении к внешним ресурсам поток просто простаивает в ожидании ответа, а процессор тратит время вхолостую. Runloom решает эту проблему: пока одна корутина ждет данные из сети или с диска, планировщик переключает процессор на другие полезные задачи. При этом библиотека даёт возможность писать привычный синхронный исходник без конструкций async и await.
Авторы заложили в основу инструмента сложную архитектуру, которая включает переключение контекста на Assembler, планировщик задач на языке C с алгоритмом work-stealing, интеграцию с сетевым стеком netpoll и поддержку средств синхронизации потоков.
Чтобы обеспечить совместимость, авторы предусмотрели изменение модуля во времени исполнения без изменения оригинального исходного кода (monkeypatching) на базе метода monkey.patch(). Средство подменяет стандартные блокирующие вызовы — например, в библиотеках socket, time или threading — на их кооперативные аналоги без необходимости переписывать все программа. При возникновении блокировки корутина ставится на паузу и чип переключается на другую задачу. Поток операционной системы одновременно продолжает работать без остановок. В дополнение к этого, разработчики встроили в библиотеку специальный мост для интеграции с asyncio — это даёт возможность запускать уже готовый асинхронный код с помощью Runloom.

30+ бесплатных курсов на ИТ-темы в Академии Selectel
Для начинающих и опытных специалистов.
Изучить →
Производительность и технические ограничения
По результатам тестов автора проекта, библиотека демонстрирует результаты, сопоставимые с производительностью планировщика языка Go. Рекордная скорость создания задач достигает 2,29 миллиона операций в секунду по сравнению с 2,10 миллиона у Go. Тем не менее такого показателя авторы добились исключительно при запуске бенчмарка из чистого C. Если разрабатывать корутины напрямую из Python-кода, скорость падает до 1,35 миллиона операций в секунду, что составляет приблизительно 65% от производительности Go. Одновременно пропускная способность при обработке запросов держится на уровне эталонных значений: она составляет 596 тысяч против 603 тысяч запросов в секунду на тестах keep-alive.
Несмотря на высокую скорость, у проекта есть два существенных ограничения. Первым стало повышенное потребление оперативной памяти: приостановленная корутина runloom требует приблизительно в 3,3 раза больше ресурсов, чем горутина, что связано с необходимостью хранить структуру кадров вызова CPython.
Второе ограничение — зависимость от режима интерпретатора. Чтобы достичь истинной многопоточности и распараллелить вычисления на все ядра процессора, придется собирать Python с отключенной глобальной блокировкой интерпретатора (GIL). При работе в стандартном режиме средство выступает только удобной альтернативой базовым асинхронным библиотекам без значительного прироста скорости.
Сферы применения
Набор модулей находится на ранней стадии разработки, но уже подходит для масштабирования бэкенд-сервисов, ML-систем и конвейеров обработки данных. Инициатива развивается как open-source инициатива, следовательно опробовать Runloom в действии и внести свой вклад в разработку планировщика может любой желающий в репозитории на GitHub.
Читают сейчас

3 часа назад
С 11 октября 2026 года опция Memory Integrity будет включена по умолчанию на совместимых ПК под Windows 11
Microsoft автоматически активирует функцию защиты целостности памяти (Memory Integrity) на части ПК под Windows 11 с октября 2026 года. Сейчас она включена по умолчанию при всех новых установках ОС, а

3 часа назад
Дистрибутив openKylin 3.0 со встроенным ИИ‑агентом для управления системой
Авторы представили openKylin 3.0 — новую версию китайского Linux-дистрибутива с собственной пакетной базой. Одним из главных нововведений стал встроенный ИИ‑агент KylinBot, который может взаимодейство

3 часа назад
Не «**** под окном», а Шумахер: фамилию гонщика включили в орфографический словарь
Институт русского языка имени Виноградова РАН включил в академический орфографический словарь, фиксирующий актуальные нормы правописания, слово «Шумахер». Фамилия известного немецкого гонщика теперь п

4 часа назад
«Билайн» переведёт абонентов домашнего ТВ на «Кинопоиск»
«Билайн» переведёт свой онлайн‑кинотеатр и платное телевидение на контент «Кинопоиска», который станет главный ТВ‑платформой и онлайн‑кинотеатром оператора, рассказали Forbes в компании. С сентября «К

4 часа назад
MikroTik сообщила о критических уязвимостях в RouterOS под названием MikroTrick
Хакеры используют цепочку из двух недавно обнаруженных уязвимостей в роутерах MikroTik для получения контроля над устройствами с доступом к SSH‑сервисам через интернет, выяснили специалисты CERT Polsk