小编Ryo*_*oji的帖子

std::thread 构造函数完成实际上与执行线程的开始同步吗?

C++11 标准 (N337, 30.3.1.2) 说明了 std::thread 构造函数的同步:

同步:构造函数调用的完成与f的副本调用的开始同步。

阅读它,我认为构造函数在新线程开始之前完成。但是根据问题(std::thread 构造和执行)和 libc++/libstdc++ 中的当前实现,似乎没有同步机制,新的执行线程可能会在 std::thread 构造函数结束之前开始。

如果这是正确的,标准试图说什么?这是标准和实施之间的差距吗?还是我对“同步”一词的理解有误?即使构造函数和新线程同时运行,是否可以认为构造函数完成与新线程的开始同步?

c++ multithreading std c++11

1
推荐指数
1
解决办法
86
查看次数

标签 统计

c++ ×1

c++11 ×1

multithreading ×1

std ×1