Repolode
tokio-rs

tokio-rs/tokio

Асинхронная среда выполнения для Rust с планировщиком задач, неблокирующим вводом-выводом, сетевыми возможностями и таймерами для надёжных сетевых приложений.

Звёзды
33,502
Форки
5,781
Открытые issues
440
Последний коммит
11 часов назад

Что это?

Tokio — событийно-ориентированная платформа с неблокирующим вводом-выводом для разработки асинхронных приложений на Rust. В неё входят многопоточный планировщик задач с балансировкой нагрузки за счёт передачи задач между потоками, реактор на основе системной очереди событий (epoll, kqueue, IOCP и аналоги), а также асинхронные TCP- и UDP-сокеты.

Tokio предназначен для разработчиков сетевых сервисов и других программ с интенсивным вводом-выводом, которым нужно обрабатывать множество одновременных подключений без выделения отдельного потока для каждого. Приложения подключают нужные им feature flags, а затем используют async/await, а также spawn, таймеры и примитивы синхронизации среды выполнения.

Проект входит в более широкую экосистему, в которую также входят веб-фреймворк axum, HTTP-реализация hyper, gRPC-библиотека tonic, абстракции middleware tower и фреймворк диагностики tracing.

Ключевые возможности

  • 01Многопоточный планировщик задач с передачей задач между потоками
  • 02Неблокирующие TCP- и UDP-сокеты
  • 03Реактор на основе epoll, kqueue и IOCP
  • 04Таймеры и примитивы асинхронной синхронизации
  • 05Feature flags позволяют подключать только нужные компоненты

Сценарии использования

  • Создание высоконагруженных TCP- или UDP-серверов на Rust
  • Разработка асинхронных клиентов, которые одновременно обращаются к множеству сервисов
  • Выполнение фоновых задач с интенсивным вводом-выводом, таймерами и отменой

Быстрый старт

  1. 1

    Добавьте Tokio в Cargo.toml со всем набором функций

    tokio = { version = "1.54.1", features = ["full"] }
  2. 2

    Напишите пример TCP-эхо-сервера в main.rs и запустите проект с помощью cargo

Что важно знать

  • Требуется toolchain Rust; минимальная поддерживаемая версия Rust — 1.85.
  • Tokio — это библиотека среды выполнения, поэтому она полезна только в проекте Rust, который вы собираете самостоятельно.

Темы

Частые вопросы

Что такое tokio?
Асинхронная среда выполнения для Rust с планировщиком задач, неблокирующим вводом-выводом, сетевыми возможностями и таймерами для надёжных сетевых приложений. Tokio — событийно-ориентированная платформа с неблокирующим вводом-выводом для разработки асинхронных приложений на Rust. В неё входят многопоточный планировщик задач с балансировкой нагрузки за счёт передачи задач между потоками, реактор на основе системной очереди событий (epoll, kqueue, IOCP и аналоги), а также асинхронные TCP- и UDP-сокеты.
tokio можно использовать бесплатно? Какая у него лицензия?
tokio распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
tokio всё ещё поддерживается?
Активно поддерживается. Последний коммит в tokio — 24 окт. 2026 г..
Для чего можно использовать tokio?
Создание высоконагруженных TCP- или UDP-серверов на Rust Разработка асинхронных клиентов, которые одновременно обращаются к множеству сервисов Выполнение фоновых задач с интенсивным вводом-выводом, таймерами и отменой
Как установить tokio?
Добавьте Tokio в Cargo.toml со всем набором функций: tokio = { version = "1.54.1", features = ["full"] } Напишите пример TCP-эхо-сервера в main.rs и запустите проект с помощью cargo
Где скачать tokio?
Исходный код и инструкции по установке — на GitHub: https://github.com/tokio-rs/tokio

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Асинхронный событийный Java-фреймворк для создания удобных в сопровождении и высокопроизводительных серверов и клиентов сетевых протоколов.

35,1 тыс.16,3 тыс.JavaApache-2.0Обновлён 17 часов назад