SuperAPI AI 工具集

tokio-patterns

编程与开发

查看项目

更新于 10-15 21:51

技能介绍

用途:该技能汇总用 Tokio 构建稳健异步应用时的常见模式与惯用法,面向 Rust 异步编程中的并发控制、任务通信、容错与生命周期管理场景。

主要能力:工作池模式用 Semaphore 限制并发任务数;请求-响应模式用 mpsc 与 oneshot 通道实现 actor 风格通信;发布订阅用 broadcast 通道;超时模式用 tokio::time::timeout 包装操作;重试用指数退避(初始间隔逐次翻倍);优雅关闭用 broadcast 与 select! 协调多组件退出;异步初始化用 OnceCell 做惰性初始化;资源清理在 Drop 中做同步清理,异步清理另设 shutdown 方法;select! 用于竞速多个操作;取消令牌用 tokio_util::sync::CancellationToken 支持层级取消。

使用方式:技能内容以 Rust 代码片段给出,按需在项目中参照实现相应结构体与函数,例如 WorkerPool::new(size)、retry_with_backoff、ShutdownCoordinator 等。

适用场景:长驻服务、任务队列、actor、事件广播、需要超时与重试的外部调用、需要协调退出与取消的并发程序。

限制:资料仅提供模式代码与最佳实践清单,未说明具体运行环境版本、依赖版本、性能数据或安装步骤,这些暂未提供;具体实现需结合自身错误类型与生命周期设计调整。