java线程里关键字与关键方法
@线程 @sleep @yield @synchronized @wait @join @notify @notifyAll @run @start @volatile
sleep()
-Thread.sleep(long millis)
-Thread.sleep(long millis, int nanos)
-TimeUnit.MILLISECONDS.sleep(long millis);
Thread类的静态方法,强制当前线程休息睡眠若干时间,让其他线程可以有执行的机会,当睡眠时间到了,线程则返回到可执行状态下。
但是当前线程并不释放对象锁,故如果是在synchronized方法中,其他线程仍然不能访问共享数据。
sleep()方法可以使低优先级的线程有执行的机会,如果没有sleep()方法,那么只有等高优先级的线程执行完才执行较低优先级的线程(没有synchronized限制)。
sleep()方法中指定的时间是线程不会运行的最短时间,时间结束之后,线程是返回到可运行的状态,而不是运行状态。所以,