我有一个计数器,目前是一个原子 u32,在我的代码的热门部分中使用,它通常只增加 1。偶尔,它会从代码的不同部分读取,但如果确实发生这种情况,该值必须准确(至少在同一线程上)。但是,我怀疑原子性可能会对性能产生不良影响。我必须解决这个问题的一个想法是让主计数器是非原子的,但以原子方式写入第二个计数器。
原子写入比读取便宜吗?就像它不需要清除(尽可能多的)缓存吗?
atomic rust
atomic ×1
rust ×1