标签: c++ pthreads
我知道使用pthreads的标准方法是使用pthread_join(),但有什么好的选择呢?我目前正在使用sleep()来强制主线程等待。这是不好的做法吗?
答案 0 :(得分:2)
使用睡眠是不好的做法。
简单示例:使用sleep时,主线程会休眠一段时间,如果线程在超时之前完成,则无法控制。因此,您的处理似乎需要花费更多时间才能满足用户的需求。另一方面,如果睡眠结束,你必须确保线程实际完成了它的工作,所以你必须向主线程发出信号。
使用pthread_join(),您不会遇到这些问题。