Thread的两个函数detach()和join()

Thread的两个函数detach()和join()_第1张图片

引自:https://www.jianshu.com/p/b5adb0ece8b9

参考链接:https://www.cnblogs.com/zhanghu52030/p/9166526.html

1.在声明一个std::thread 对象之后,都可以使用detach和join函数来启动被调线程,区别在于二者是否阻塞主调线程

(1)当使用Join()函数时,主调线程阻塞,等待被调线程终止,然后主调线程回收被调线程资源,并继续运行;
(2)当使用detach()函数时,主调线程继续运行,被调线程驻留后台运行,主调线程无法再取得该被调线程的控制权,当主调线程结束时,由运行时库负责清理与被调线程相关的资源。



你可能感兴趣的:(Thread的两个函数detach()和join())