[项目分享] Auralis:Signal + Memo + TaskScope —— 一个纯异步 Rust 反应式内核,不是又一个框架

💡 原文中文,约2100字,阅读约需5分钟。
📝

内容提要

Auralis 是一个无外部依赖的反应式内核,包含 auralis-signal 和 auralis-task 两个 crate。它支持结构化并发和优先级执行,提供信号、记忆和任务管理功能,设计上避免重入问题,确保 panic 安全,并通过增量订阅优化性能。与 Leptos 不同,Auralis 不依赖于 DOM,适用于多种 UI 层。

🎯

关键要点

  • Auralis 是一个无外部依赖的反应式内核,包含 auralis-signal 和 auralis-task 两个 crate。

  • auralis-signal 提供信号、记忆和变更检测功能,支持结构化并发。

  • auralis-task 提供优先级执行器和上下文依赖注入,确保 panic 安全。

  • Auralis 设计上避免重入问题,使用延迟回调和主动 waker 注销。

  • 与 Leptos 不同,Auralis 不依赖于 DOM,适用于多种 UI 层。

  • Auralis 的 Memo 机制在重算时共享依赖的订阅,优化性能。

  • 在性能测试中,Auralis 在真实交互频率下表现出显著加速。

延伸问答

Auralis 是什么?

Auralis 是一个无外部依赖的反应式内核,包含 auralis-signal 和 auralis-task 两个 crate,支持结构化并发和优先级执行。

Auralis 如何处理 panic 安全问题?

Auralis 通过 Memo 机制确保在 compute 函数 panic 后,旧订阅完好保留,下一次成功 read() 即可恢复。

Auralis 与 Leptos 有什么区别?

Auralis 是一个纯内核,不依赖于 DOM,而 Leptos 的信号绑定在 DOM 框架中。

Auralis 的 Memo 机制有什么优势?

Auralis 的 Memo 机制在重算时共享依赖的订阅,优化性能,并在真实交互频率下表现出显著加速。

如何在 Auralis 中使用结构化并发?

Auralis 提供 TaskScope crate,允许用户创建结构化并发的任务,并通过优先级执行器管理任务。

Auralis 的设计如何避免重入问题?

Auralis 通过延迟回调和主动 waker 注销来避免重入问题,确保系统的稳定性。

➡️

继续阅读