std :: thread构造和执行

Kol*_*nya 1 c++ multithreading constructor c++11

如果在线程对象构造完成后保证线程实际正在运行,我在文档中找不到任何信息.换句话说,是否保证在线程构造函数完成后线程函数已经被执行?一些参考文献将不胜感激.

Ant*_*ams 9

不,当std::thread构造函数完成时,无法保证线程已经开始执行.所有保证的是它被安排执行,所以在调用构造函数之后的某个时刻,线程将运行,并且它将join()在相关std::thread对象的调用返回之前完成.