开发者社区> 问答> 正文

linux多线程编程中如何等待过个线程退出

linux多线程编程中,如果线程A创建了线程B,我知道用pthread__ join可以令线程A
阻塞然后等待线程B的退出。如果线程A创建了三个线程B,C,D,执行完的先后顺序不知。想让A必须等待三个线程都退出后再退出,应该怎么做?
连用pthread__join三次吗???但是第一次用了pthread__join后,A不就阻塞了吗?

展开
收起
云栖技术 2016-06-06 10:44:23 3030 0
1 条回答
写回答
取消 提交回答
  • 社区爱好者,专为云栖社区服务!

    既然等待3个线程都退出,这样做应该是可以的,反正你不在乎谁先退出的,比如依次等待abc,阻塞了,a处理完,主线程解除阻塞状态再等待b,然后是c,这个思路我曾经在Windows下测试过(用好几个Windows提供的WaitForSingleObject等待多个线程),是可以的,Linux应该也可以

    2019-07-17 19:27:51
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Alibaba Cloud Linux 3 发布 立即下载
ECS系统指南之Linux系统诊断 立即下载
ECS运维指南 之 Linux系统诊断 立即下载