等待和等待时差?

时间:2015-02-23 06:11:45

标签: java multithreading wait

我在采访中遇到了这个问题。

线程中等待和等待时间有什么区别?

我知道wait方法导致当前线程等待,直到另一个线程调用此对象的notify()方法或notifyAll()方法,或者经过了指定的时间量。但我不确定他要问的是什么时间等待。

任何人都可以解释一下等待的时间吗?

先谢谢。

3 个答案:

答案 0 :(得分:3)

它们可能意味着Object.wait(long timeout) vs Object.wait(),请阅读java.lang.Object API了解详情

答案 1 :(得分:3)

void wait();

输入监视器的等待集,直到收到通知 另一个线程。

void wait(long timeout);

输入监视器的等待集,直到收到通知 另一个线程或超时毫秒过去了。

void wait(long timeout, int nanos);

输入监视器的等待集,直到收到通知 另一个线程或超时毫秒加 纳米纳秒过去了

答案 2 :(得分:0)

From Java Doc

  

public final void wait(long timeout)                   抛出InterruptedException

导致当前线程等待,直到另一个线程调用此对象的notify()方法或notifyAll()方法,或者已经过了指定的时间量。