![]() |
1
3
您总是看到相同的结果,因为第一个线程在第二个线程之前启动并运行其操作。这会缩小竞争条件发生的窗口。 但最终,仍然有可能发生这种情况,因为++操作不是原子操作(先读取值,然后递增,然后写入)。 如果两个线程同时启动(例如:线程1由于CPU忙而变慢),那么它们将读取相同的值,最终结果将为1。 |
![]() |
Eric · fgets_unlocked()用于多线程读取不同文件 3 年前 |
![]() |
RoyGNEU · 堆上的专用std::Vector是线程安全的吗? 3 年前 |
![]() |
JaiK · 在c中使用线程或队列写入文件# 7 年前 |
![]() |
Catalin Ghita · 如何以安全线程对象为值初始化哈希表? 7 年前 |
![]() |
Juan JuezSarmiento · C++删除对象,是否锁定? 7 年前 |
![]() |
Missa · 两个不同线程正在处理原子NSMutableArray 7 年前 |
|
user5682282 · 从其他线程读取值 7 年前 |