代码点读机 / Rust / Arc

Arc Rust · 常用类型

多线程安全的引用计数智能指针,是 Rc 的线程安全版本,可在多个线程间共享所有权。

怎么用

let 变量 = Arc::new(值); 再用 Arc::clone(&变量) 增加引用,用于多线程共享所有权

小例子

use std::sync::Arc;
let a = Arc::new(5);
let b = Arc::clone(&a);
println!("{}", b);

运行结果

5

提醒:内部数据默认不可变;要在线程间修改需配合 Mutex 等

官方文档:https://doc.rust-lang.org/std/sync/struct.Arc.html

在代码里遇到不认识的词?打开代码点读机,点一下就懂 → ← Rust全部词条