2021年5月17日
摘要: 如前所述,可以通过join()来等待线程完成。但是,当程序变得复杂时,程序的出口可能不止一个,如果主线程(我觉得它是,就这样吧)打算等待子线程完成,就需要仔细选择在代码的哪个位置调用join(),避免因为程序异常,跳过了对join()的调用。 struct func { int& i; func(i 阅读全文
posted @ 2021-05-17 18:32 天官赐福 阅读(81) 评论(0) 推荐(0)
摘要: 如果你想确保在主线程退出前,子线程已经执行完毕,可以通过结合(joining)线程,来等待一个线程的完成。通过在相关联的std::thread示例上调用join()函数来实现,调用后,主线程在子线程运行期间将做不了任何有用的事,唯有等待。 struct func { int& i; func(int 阅读全文
posted @ 2021-05-17 14:49 天官赐福 阅读(89) 评论(0) 推荐(0)