美文网首页java多线程
线程核心方法-sleep

线程核心方法-sleep

作者: 余生爱静 | 来源:发表于2021-04-26 11:18 被阅读0次

    源码

      /**
         * Causes the currently executing thread to sleep (temporarily cease
         * execution) for the specified number of milliseconds, subject to
         * the precision and accuracy of system timers and schedulers. The thread
         * does not lose ownership of any monitors.
         *
         * @param  millis
         *         the length of time to sleep in milliseconds
         *
         * @throws  IllegalArgumentException
         *          if the value of {@code millis} is negative
         *
         * @throws  InterruptedException
         *          if any thread has interrupted the current thread. The
         *          <i>interrupted status</i> of the current thread is
         *          cleared when this exception is thrown.
         */
        public static native void sleep(long millis) throws InterruptedException;
    

    特点:
    1、线程进入休眠,线程的状态是TIMED_WAITING

    thread to sleep
    
    TIMED_WAITING

    2、线程不会释放自己的监视器的所有权,言外之意就是不会释放拥有的锁。

    The thread does not lose ownership of any monitors.
    
    Code
    State

    3、入参不能为负数

    IllegalArgumentException – if the value of millis is negative
    
    IllegalArgument

    4、假如该线程已经进入休眠,这时候中断该线程,那么该线程的中断状态将会被复位,同时抛出异常InterruptedException

    InterruptedException – if any thread has interrupted the current thread. The interrupted status of the current thread is cleared when this exception is thrown
    
    Interrupt

    相关文章

      网友评论

        本文标题:线程核心方法-sleep

        本文链接:https://www.haomeiwen.com/subject/lobsrltx.html