永发信息网

如何让线程A等待线程B完成后,再继续线程A

答案:2  悬赏:70  手机版
解决时间 2021-02-15 04:42
  • 提问者网友:欲劫无渡
  • 2021-02-14 09:26
如何让线程A等待线程B完成后,再继续线程A
最佳答案
  • 五星知识达人网友:大漠
  • 2021-02-14 09:48
pthread_exit(NULL);

}

int main()

{

//初始化一个互斥锁

pthread_mutex_init(&mut,NULL);

//创建A同学线程

pthread_create(&thread[0], NULL,studentA,NULL);

//创建B同学线程

pthread_create(&thread[1], NULL,studentB,NULL);

//等待A同学线程结束

pthread_join(thread[0],NULL);

//等待B同学线程结束

pthread_join(thread[1],NULL);

}
全部回答
  • 1楼网友:舊物识亽
  • 2021-02-14 10:37
bac的顺序,只是启动下一个线程前,需要等待另一个线程的结果返回,你可以配合接口,来回调, 例如: class main implement blistener{ public void starttask(){ 启动b线程,并传入listener实例,来回调用; } //override public void btaskcomplete(){ b线程成功执行; 启动a线程; } } class b extends thread{ 可以构造时获取listener实例; public void run(){ ... 执行完毕出结果,listener.btaskcomplete(); } }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯