概括来讲,当你想在线程之间共享数据时,你通常会使用 Arc
,而使用普通的引用是无法做到这一点的。当你需要修改在线程间共享的数据时,你还需要使用 Mutex
。当你想要修改线程间共享的数据,并且无法通过使用引用来共享一个 Mutex
时,你应该使用 Arc<Mutex<...>>
https://zhuanlan.zhihu.com/p/523959791
https://www.less-bug.com/posts/rust-get-to-know-all-kinds-of-boxes-box-rc-arc-cell-refcell/
智能指针的分类
指向原始笔记的链接
- 所有权:独占还是共享
- 可变性
- 原子性
Box
- 独占