在RUST中,数据类型实在变化多端并且灵活多样同时更是有趣无比。本文,带大家学习一下Arc<Mutex<Vec>>这三个对象的综合使用。
Arc 这个是允许在多线程中锁定后操作。
Mutex 这个是允许修改其中的内容。
Vec 这个类似于列表。
String 这个就是具体的数据类型了。
下面看示例吧。
use std::sync::{Arc,Mutex};
fn main() {
let myvc: Arc<Mutex<Vec>> = Arc::new(Mutex::new(vec![]));
//let myvc: Arc<Mutex<Vec>> = Arc::new(Mutex::new(Vec::new()));
let mut v = myvc.lock().unwrap();
{
v.push("hello".to_string());
v.push(" world".to_string());
}
println!("{:?}",v);
}
//输出 ["hello", " world"]