Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗rsSpAcInr 157 of 288 menu
◀ ▶

Введение в асинхронность в Rust

Асинхронная функция может ждать, не блокируя остальные задачи на том же исполнителе. Пока одна работа стоит на ожидании, другие шаги успевают выполниться в том же потоке.

Такой код не создает новый поток ОС на каждый шаг: переключение происходит внутри исполнителя, когда функция честно отдает управление до готовности результата.

В этом разделе разберем точку ожидания, метку на главной функции, фоновую задачу, сбор нескольких результатов и предел по времени. Сложные темы вроде ручного закрепления в памяти или выбора между многими ожиданиями здесь не затрагиваем.

Примеры соберем в проекте Cargo с внешним крейтом для исполнителя. Каждый шаг опирается на предыдущий, а в конце закрепим приемы на коротких задачах.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить