【发布时间】:2010-10-16 21:32:15
【问题描述】:
我知道我可以调用 thread.join() 来强制线程在当前线程可以继续之前完成。但是,我的程序有一堆文件被读入内存,修改,然后刷新到磁盘。每次刷新都在单独的线程中完成,以便当前线程可以在内容刷新到磁盘时继续。
我可以保留一组所有生成的线程,然后在主线程执行结束时将它们全部加入,但如果程序运行很长时间,可能会有大量的刷新线程,其中大部分已完成无论如何。
有什么方法可以在继续和退出主线程之前加入所有活动线程?
【问题讨论】:
-
你想什么作为替代方案;提前完成工作的线程会被简单地终止吗?
标签: c++ multithreading boost