首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何区分等待(长超时)退出通知或超时?

如何区分等待(长超时)退出通知或超时?
EN

Stack Overflow用户
提问于 2010-08-03 22:51:34
回答 7查看 32.5K关注 0票数 40

使用这个等待声明:

代码语言:javascript
复制
public final native void wait(long timeout) throws InterruptedException;

它可以通过InterruptedException退出,或者通过超时退出,或者因为Notify/NotifyAll方法是在另一个线程中调用的,所以异常很容易捕获,但是...

有没有办法知道退出的原因是超时还是通知?

编辑:

这是一种可以工作的棘手方法(尽管我不喜欢它)

代码语言:javascript
复制
          long tBefore=System.currentTimeMillis();
          wait(TIMEOUT);
          if ((System.currentTimeMillis() - tBefore) > TIMEOUT) 
            { 
               //timeout
            }
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3397722

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档