首页
个人开发
工作相关
共享
搜索
登录
搜索
colo
欲买桂花同载酒
累计撰写
1823
篇文章
累计收到
0
条评论
首页
栏目
首页
个人开发
工作相关
共享
并发编程
2025-12-14
使用多线程安全修改共享计数器
修正代码的关键步骤:使用Arc<Mutex<T>>包装共享数据在闭包内克隆Arc并移动所有权通过lock()获取互斥锁修改数据正确代码结构:use std::sync::{Arc, Mutex}; use std::thread; fn main() { let counter = Arc::new(Mutex::new(0)); let mut handles = vec![]; for _ in 0..2 { let counter = Arc::clone(&counter); let handle = thread::spawn(move || { // 加锁修改数据 }); handles.push(handle); } // 等待线程结束 }
2025年-12月-14日
3 阅读
0 评论
并发编程
2025-12-12
实现一个线程安全的计数器并分析性能差异
实现线程安全计数器的两种主要方式:互斥锁(Mutex):使用Mutex<i32>包装计数器,通过lock()方法保证独占访问原子操作(Atomic):使用AtomicI32类型,通过fetch_add()等原子指令实现无锁操作性能对比:原子操作在高并发场景下性能显著优于互斥锁,因其避免了线程阻塞和上下文切换。
2025年-12月-12日
11 阅读
0 评论
并发编程
2025-12-12
使用 Mutex 实现线程安全的计数器
实现线程安全计数器的核心步骤:使用 Arc<Mutex<T>> 包装共享数据通过 lock().unwrap() 获取互斥锁在锁作用域内修改数据使用 thread::spawn 创建线程最终确保多个线程能安全地递增计数器。
2025年-12月-12日
4 阅读
0 评论
并发编程
2025-12-11
使用多线程计算数组元素和
使用多线程计算数组元素和的核心步骤:使用Arc包装数组实现共享所有权创建Mutex保护共享的求和结果将数组分割为多个子区间为每个子区间创建线程进行局部求和将局部结果累加到共享总和中使用join等待所有线程完成
2025年-12月-11日
4 阅读
0 评论
并发编程
2025-12-8
实现一个线程安全的计数器
实现线程安全计数器的两种主要方法:原子操作:使用std::sync::atomic::AtomicUsize实现无锁计数器互斥锁:使用std::sync::Mutex保护共享的usize值关键选择依据:高并发场景优先选择原子操作(性能更优)需要复杂操作时使用互斥锁
2025年-12月-8日
4 阅读
0 评论
并发编程