- Thread.sleep()
try {
Thread.sleep(10000000);// 时间单位还是ms
}catch (Exception e){
e.printStackTrace();
}
上述方法不能清晰的看出线程休眠时长,可以使用:
Thread.sleep(24*60*60*1000+10*60*1000);//休眠24小时10分
- java.util.concurrent.TimeUnit包下的方法(推荐使用,更优雅简单)
2.1 使用方法
2.2 详细方法和枚举 TimeUtil.pngTimeUnit.DAYS.sleep(1);// 休眠1天 TimeUnit.HOURS.sleep(1);// 休眠1小时 TimeUnit.MINUTES.sleep(1);//休眠1分钟 TimeUnit.SECONDS.sleep(1);// 休眠1秒
TimeUnit还可以用来做时间转换,例如:
可以将秒转换成各种单位的值
可以将分转换成各种单位的值 TimeUnit分钟秒转换.png
3. 原理
TimeUnit原理.png TimeUnit本质上也是调用了Thread.sleep()方法,只是把Thread.sleep()封装了,让时间看起来更简洁,使用起来更简单。
网友评论