首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    JDK1.9- 线程状态

    3.2 Timed Waiting(计时等待) Timed Waiting在API中的描述为:一个正在限时等待另一个线程执行一个(唤醒)动作的线程处于这一状态。...我们需要记住下面几点: 进入 TIMED_WAITING 状态的一种常见情形是调用的 sleep 方法,单独的线程也可以调用,不一定非要有协 作关系。...一条有意思的tips: 我们在翻阅API的时候会发现Timed Waiting(计时等待) 与 Waiting(无限等待) 状态联系还是很紧密的, 比如Waiting(无限等待) 状态中wait方法是空参的...,而timed waiting(计时等待) 中wait方法是带参的。...如果没有得到(唤醒)通知,那么线程就处于Timed Waiting状态,直到倒计时完毕自动醒来;如果在倒 计时期间得到(唤醒)通知,那么线程从Timed Waiting状态立刻唤醒。

    35320

    面试突击23:说一下线程生命周期,以及转换过程?

    (无时限等待状态) TIMED_WAITING(有时限等待状态) TERMINATED(终止状态) 我们可以在 Thread 的源码中可以找到这 6 种状态,如下所示: 当然你也可以使用 Java...state); // 唤醒 thread 线程 synchronized (lock) { lock.notify(); } 以上程序的执行结果如下图所示: 4.从 RUNNABLE 到 TIMED_WATTING...当调用带超时时间的等待方法时,如 sleep(xxx),线程会从 RUNNABLE 状态变成 TIMED_WAITING 有时限状态,如下代码所示: // 创建线程 Thread thread = new...("第二次获取线程状态:" + state); 以上程序的执行结果如下图所示: 当超过了超时时间之后,线程就会从 TIMED_WAITING 状态变成 RUNNABLE 状态,实现代码如下:...(无时限等待状态)、TIMED_WAITING(有时限等待状态)、TERMINATED(终止状态)。

    15820

    Java面试必考题之线程的生命周期,结合源码,透彻讲解!

    , TIMED_WAITING, TERMINATED; } NEW(初始化状态) 我们通过new一个Thread对象,进行了初始化工作,这时的线程还没有被启动。...TIMED_WAITING(有限时等待) 与WAITING相比,TIMED_WAITING是一种有限时的状态,可以通过设置等待时间,没有外界干扰的情况下,达到指定等待时间后,自动终止等待状态,转为RUNNABLE...RUNNABLE 与 TIMED_WAITING 的状态转变 这种与上面的很相似,只是在方法调用和参数上有细微差别,因为,TIMED_WAITINGWAITING 状态的区别,仅仅是调用的是超时参数的方法...} catch (InterruptedException e) { e.printStackTrace(); } } } 输出: Thread-0:TIMED_WAITING...Thread-1:TERMINATED 这里面我们启动threa1后,让主线程休眠了1秒,这时thread1获得同步方法后,方法内部执行了休眠2秒的操作,因此它处于TIMED_WAITING状态,而

    8900
    领券