文章字数:285,阅读全文大约需要1分钟
这是
java
并发包java.util.concurrent
下的一个用于定义时间粒度、时间转换、线程休眠的工具类。
枚举量
1 | SECONDS:秒 |
常用方法
toHours(long duration)
:
粒度之间都有类似的方法1
2// 一天几个小时
Long dayToHour = TimeUnit.DAYS.toHours(1);//24convert(long sourceDuration, TimeUnit sourceUnit)
1
2// 48小时转换成天
TimeUnit.DAYS.convert(48, TimeUnit.HOURS);//2sleep(long timeout)
可读性更好的线程休眠操作1
2//休眠两分钟
TimeUnit.SECONDS.sleep(2);timedJoin(Thread thread, long timeout)
1
2//指定线程休眠指定毫秒数
TimeUnit.SECONDS.timedJoin(Thread.currentThread(), 2);timedWait(Object obj, long timeout)
1
2
3
4
5//休眠指定对象
public synchronized void show() throws InterruptedException {
TimeUnit.SECONDS.timedWait(this, 2);
System.out.println("HelloWorld");
}