3 个版本 (1 个稳定版)

1.0.0 2020年7月19日
0.1.1 2020年7月19日
0.1.0 2020年7月19日

#586 in 并发

MIT 许可证

11KB
181

"写很少读很多"包装器。

这个无锁容器适用于您经常读取到一个T,但很少修改该T的情况。

从逻辑角度来看,它大致等同于一个RwLock,除了

  • 它可以在no_std平台上工作。
  • 读取T总是花费相同的时间,并且永远不会等待锁释放。
  • 写入T是通过比较和交换方式完成的,更新可能需要多次执行。

请参阅Wrrm的文档。

示例

let val = wrrm::Wrrm::from(5);
assert_eq!(*val.access(), 5);

val.modify_with(|v| *v += 1);
assert_eq!(*val.access(), 6);

依赖项

~23KB