百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
L

loom

> 编程语言
开源

用于 Rust 的并发排列测试工具。

2.8K stars0 点赞0 次浏览
访问官网GitHub

工具介绍

用于 Rust 的并发排列测试工具。

Loom

Loom 是一个用于测试并发 Rust 代码的测试工具。它会多次运行一个测试。 次,对该测试在给定条件下的可能并发执行进行排列。 [C11 内存模型][spec]。它使用[状态缩减 技术][cdschecker]以避免组合爆炸。

快速入门

[loom 文档][docs] 中有更多关于此的详细说明。 如何使用 Loom。但如果你只是想快速上手,首先将以下内容添加进去 你的 Cargo.toml。

toml
loom = "0.7"

接下来,创建一个测试文件并添加一个测试:

…

然后,运行测试。

bash
RUSTFLAGS="--cfg loom" cargo test --test buggy_concurrent_inc --release

不支持的特性

Loom 目前尚未实现完整的 C11 内存模型。 以下是不支持特性的(不完整)列表。

  • SeqCst 访问(例如 load、store 等): 它们被视为 AcqRel。也就是说,它们施加了较弱的同步, 导致 Loom 产生误报(不完整)。参见 #180 中的示例。另一方面, fence(SeqCst) 是受支持的。
  • 加载缓冲行为: Loom 不会探索 C11 内存模型中可能存在的某些执行。 也就是说,即使 Loom 表示没有错误,被检查的代码中也可能存在错误(不健全)。 参见 tests/litmus.rs 中的 load_buffering 测试用例。

许可证

本项目采用 MIT 许可证 授权。

贡献

除非您明确声明 otherwise,否则您有意提交以包含在 loom 中的任何贡献,均应按 MIT 许可证授权,不附加任何额外条款或条件。

[][docs] [docs]: https://docs.rs/loom [spec]: https://en.cppreference.com/w/cpp/atomic/memory_order [cdschecker]: http://plrg.eecs.uci.edu/publications/toplas16.pdf [target.'cfg(loom)'.dependencies]

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Rust

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言