标签
这篇博客文章对比了在STM32F446微控制器上Embassy (异步 Rust)和FreeRTOS (C)的性能和易用性,重点关注中断延迟、内存使用和编程简洁性。
解释了为何 Tokio 的调度器在大规模下不保证任务顺序,使用一个真实世界的 100 万个任务示例,并强调了进度与顺序之间的区别。
Cloudflare 工程师花了六周时间调试 hyper Rust HTTP 库中的一个竞态条件,该问题导致大图片响应中出现静默数据截断。根本原因是在 flush 期间,一个 `let _ =` 丢弃了 `Poll::Pending` 信号;修复方式是一处四行代码的修改,现已合并到上游。
这是一套动手实践教程系列,旨在弥合理解异步 Rust 内部机制(Future、poll、Pin、执行器)与使用 Tokio 部署实际异步代码之间的差距,面向熟悉 JavaScript 异步和基础 Rust 的开发者。
本文分析了 Rust 中 Tokio 的 mpsc 通道中意想不到的内存分配开销,揭示了由于内部块大小导致的每个通道的固定开销。文章展示了这一开销如何影响诸如 Agent Gateway 这样的大规模应用程序,并建议采用 futures-channel 等替代方案以提高内存效率。