[英]What does it mean to “join” a thread?
对于我的班级,我应该找出一段代码有什么问题,而我解密的部分是
// joining a thread blocks until that thread finishes
a.join();
b.join();
加入一个线程与锁定线程一样吗? 因为我认为这个任务的重点是你不应该让线程解锁。
评论说,这一切,真的。 加入线程意味着等待它完成。 也就是说,阻止当前线程直到另一个完成。
考虑将一个线程称为“分叉”您的进程为两个不同的执行线程。 然后,join是相反的 - 它是这两个单独的线程连接在一起的地方(并且只有父节点从那里继续)。
加入线程意味着要等到该线程处于活动状态。 当线程退出时,调用join()
的线程将继续执行。 因此,在上面的示例中,调用a.join()
和b.join()
的线程(可能是主线程)将等待,直到线程a
和b
( b.join()
顺序)完成其作业,然后继续执行代码那是在b.join()
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.