在java中的join()中传递的参数有什么用?

时间:2014-03-07 05:51:49

标签: java concurrency

根据Java Docs,如果t是当前正在执行其线程的Thread对象,那么

t.join();导致当前线程暂停执行,直到t's thread终止。

那么,t.join(2000)是什么意思?

这是否意味着当前线程在杀死thread t之前会等待最多2秒并且不会等待thread t自行终止?

4 个答案:

答案 0 :(得分:2)

  

那么,t.join(2000)是什么意思?

根据documentation- Thread.html#join(long)

  

此线程最多等待毫秒毫秒。暂停时间   0意味着永远等待。

  

这是否意味着当前线程在杀死线程t之前会等待最多2秒并且不会等待线程t自行终止?

它将等待死亡但它不会杀死它正在等待的威胁。

答案 1 :(得分:0)

这意味着该线程最多等待毫秒提到的线程。超时0毫秒表示线程将永远等待。

答案 2 :(得分:0)

t.join(2000)的调用将在线程t死亡或2秒后返回,以先到者为准。调用join()永远不会杀死一个帖子。

答案 3 :(得分:0)

t.join(2000)表示它将等待线程最多死亡2000毫秒。 (Ref