标签:线程同步

共 11 篇文章

Java Phaser 同步屏障为什么比 CyclicBarrier 更适合动态注册任务

Java Phaser 同步屏障为什么比 CyclicBarrier 更适合动态注册任务 在需要多个线程同步完成某个阶段任务,然后才能一起进入下一阶段的场景中,CyclicBarr

# JavaPhaser # 同步屏障 # CyclicBarrier
2026-05-22 147 0

Java AQS条件队列Condition的await与signal实现

Java AQS条件队列Condition的await与signal实现 Java并发包中的AbstractQueuedSynchronizer(AQS)是构建锁和其他同步组件的基

# Java并发编程 # AQS # Condition
2026-05-11 156 0

Java Exchanger线程间交换数据的同步工具

Java Exchanger线程间交换数据的同步工具 Java Exchanger 是一个用于线程间协作的同步工具类,它允许两个线程在汇合点交换数据。它提供了一个同步点,在这个同步

# Java并发 # 多线程 # 线程同步
2026-05-06 149 0

Java Phaser分阶段同步屏障替代CyclicBarrier的优势

Java Phaser分阶段同步屏障替代CyclicBarrier的优势 Java并发包(J.U.C)中的 Phaser 是一个功能强大的同步工具,它解决了 CyclicBarri

# Java # 并发编程 # Phaser
2026-05-04 170 0

C++多线程中数据竞争导致的未定义行为排查

C++多线程中数据竞争导致的未定义行为排查 数据竞争是多线程编程中最棘手的问题之一。当两个或多个线程同时访问同一块内存,且其中至少一个是写操作,且没有适当的同步机制时,就会发生数据

# C++多线程 # 数据竞争 # 未定义行为
2026-04-20 180 0

C++ std::atomic的load/store操作与memory_order选择

C++ std::atomic的load/store操作与memoryorder选择 多线程编程中,数据竞争是导致程序崩溃或产生不可预测结果的元凶。C++11 引入的 std::a

# C++ # 多线程编程 # 原子操作
2026-04-19 199 0

C++ 多线程同步std::mutex与std::lock_guard

在多线程编程中,当多个线程同时访问共享数据时,会导致数据竞争,从而引发程序崩溃或产生错误结果。为了解决这一问题,C++ 标准库提供了 std::mutex(互斥锁)和 std::l

# C++ # 多线程 # 线程同步
2026-04-15 194 0

C++ 多线程:std::thread 与互斥锁

C++ 多线程:std::thread 与互斥锁 阶段一:编译环境配置与核心对象声明 1. 确认编译器支持 C++11 或更高标准。打开终端并运行 g++ version。若版本号

# C++多线程 # 互斥锁 # 线程同步
2026-04-07 174 0

Python 多线程:threading 模块与锁机制

Python 多线程:threading 模块与锁机制 1. 打开 代码编辑器或集成开发环境,新建 空白文件并 保存 为 threadinglock.py。 2. 引入 标准库模块

# 多线程 # 锁机制 # 线程同步
2026-04-07 225 0

C++ 线程库:std::thread 与互斥锁

C++ 线程库:std::thread 与互斥锁 阶段一:创建并启动基础线程 1. 引入 标准线程库头文件 include <thread 与基础输入输出库 include <io

# C++多线程 # 并发编程 # 线程同步
2026-04-06 174 0

Java 锁升级过程:偏向锁到轻量级锁到重量级锁

Java 锁升级过程:偏向锁到轻量级锁到重量级锁 Java 虚拟机(JVM)为了提升多线程环境下对象同步的性能,设计了一套锁升级机制。这套机制从最轻量的“偏向锁”开始,在竞争加剧时

# Java并发 # 锁升级 # 偏向锁
2026-04-03 233 0