Java线程休眠的方法有以下几种:
使用Thread类的sleep方法:Thread.sleep(long millis)方法可以使当前线程休眠指定的毫秒数。该方法是静态方法,可以通过Thread类直接调用。
使用TimeUnit类的sleep方法:TimeUnit类是Java 5中新增的一个枚举类,其中提供了sleep方法可以使当前线程休眠指定的时间单元。例如,TimeUnit.SECONDS.sleep(1)可以使当前线程休眠1秒。
使用Object类的wait方法:Object类的wait方法可以使当前线程进入等待状态,直到其他线程调用该对象的notify或notifyAll方法唤醒该线程。wait方法必须在synchronized代码块或方法中调用。
使用Lock类的Condition对象的await方法:Condition是Lock接口中定义的一个方法,它可以使当前线程进入等待状态,直到其他线程调用该Condition对象的signal或signalAll方法唤醒该线程。
需要注意的是,线程休眠不一定会精确地休眠指定的时间,因为系统调度的精度和操作系统的工作负载等因素都会影响实际休眠时间。