Repolode
tokio-rs

tokio-rs/tokio

Rust 异步运行时,提供任务调度、非阻塞 I/O、网络和定时器,用于构建可靠的异步应用。

Star
33,495
Fork
5,910
未关闭 Issue
440
最近提交
昨天

这是什么?

Tokio 是一个基于事件驱动、非阻塞 I/O 的 Rust 异步编程平台。它包含多线程、支持任务窃取的调度器,基于操作系统事件队列(如 epoll、kqueue、IOCP)的反应器,以及异步 TCP 和 UDP 套接字。

它面向需要处理大量并发连接的网络服务和 I/O 密集型程序,开发者无需为每个连接分配独立线程。应用通过按需启用 feature 标志,结合 async/await 使用运行时提供的任务生成、定时器和同步原语。

围绕 Tokio 还有一套生态项目,包括 axum Web 框架、hyper HTTP 实现、tonic gRPC 库、tower 中间件抽象以及 tracing 诊断框架。

核心功能

  • 01多线程、支持任务窃取的任务调度器
  • 02非阻塞 TCP 和 UDP 套接字
  • 03基于 epoll、kqueue 和 IOCP 的事件反应器
  • 04提供定时器和异步同步原语
  • 05通过 feature 标志按需引入组件

适用场景

  • 用 Rust 构建高并发 TCP 或 UDP 网络服务
  • 编写需要同时调用多个服务的异步客户端
  • 运行带定时器和取消机制的 I/O 密集型后台任务

快速上手

  1. 1

    在 Cargo.toml 中添加 Tokio 并启用全部功能

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

    在 main.rs 中编写 TCP 回显服务器示例并用 cargo 运行项目

使用前须知

  • 需要 Rust 工具链,且最低支持的 Rust 版本为 1.85。
  • Tokio 是运行时库,只能在你自行构建的 Rust 项目中使用。

标签

常见问题

tokio 是什么?
Rust 异步运行时,提供任务调度、非阻塞 I/O、网络和定时器,用于构建可靠的异步应用。 Tokio 是一个基于事件驱动、非阻塞 I/O 的 Rust 异步编程平台。它包含多线程、支持任务窃取的调度器,基于操作系统事件队列(如 epoll、kqueue、IOCP)的反应器,以及异步 TCP 和 UDP 套接字。
tokio 可以免费使用吗?用的什么许可证?
tokio 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
tokio 还在维护吗?
活跃维护中。tokio 最近一次提交是在 2026年10月23日。
tokio 适合用来做什么?
用 Rust 构建高并发 TCP 或 UDP 网络服务 编写需要同时调用多个服务的异步客户端 运行带定时器和取消机制的 I/O 密集型后台任务
tokio 怎么安装和运行?
在 Cargo.toml 中添加 Tokio 并启用全部功能: tokio = { version = "1.54.1", features = ["full"] } 在 main.rs 中编写 TCP 回显服务器示例并用 cargo 运行项目
在哪里获取 tokio?
源代码和安装说明在 GitHub 上:https://github.com/tokio-rs/tokio

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目