首页
文章列表
标签墙
返回找工具啦
内存序
共 3 篇文章
C++原子操作std::memory_order在双检查锁中的应用
2026-04-19 21:16:12
双检查锁模式旨在解决多线程环境下单例初始化的性能瓶颈问题。其核心目标是在保证线程安全的前提下,尽量减少锁的使用次数。尽管现代 C++ 提供了 std::callonce 等便捷工具,但在高性能底层库开发中,手动实现双检查锁依然是必要的技能。 本文将指导你如何利用 C++11 的原子操作和内存序(st
C++编程
多线程
原子操作
50
0
C++ std::atomic的load/store操作与memory_order选择
2026-04-19 11:27:16
C++ std::atomic的load/store操作与memoryorder选择 多线程编程中,数据竞争是导致程序崩溃或产生不可预测结果的元凶。C++11 引入的 std::atomic 是解决这一问题的核心工具,它能保证对变量的操作是不可分割的。然而,仅仅使用原子变量并不一定能保证正确的线程同
C++
多线程编程
原子操作
58
0
C++ 原子操作与内存序在自旋锁中的实现
2026-04-02 20:36:09
C++ 原子操作与内存序在自旋锁中的实现 多线程程序中,多个线程同时访问共享资源时必须进行同步,否则会导致数据竞争和未定义行为。自旋锁是一种轻量级的同步原语,适用于临界区执行时间较短的场景。C++11 引入了原子操作和内存序机制,使得我们可以不用依赖平台相关的内联汇编或系统 API,就能写出可移植、
C++原子操作
内存序
自旋锁
74
0