分享一个sleep方法比较优雅的写法

原来使用sleep方法是这样的:

Thread.sleep(1000);

跟进sleep()方法源码看下:

 public static native void sleep(long millis) throws InterruptedException;

可以发现是个本地方法,不过这里更关键的是,参数millis是long类型的,也就是说不管我们是要休眠1秒,1分钟,1小时,1天等,我们都要换算成毫秒作为参数传入才是我们想要的正确结果。

使用另一种优雅的写法

TimeUnit.SECONDS.sleep(1);

这段代码就等价于【Thread.sleep(1000)】

在这里插入图片描述

从截图可以看到,有很多单位都已经定义好了,现拿现用,无需计算。

总结

简单的做了一个比较优雅的sleep方法写法,因为我觉得用第二种方法,我们不仅可以少去一些计算的时候,别的开发者也能够很容易的看出休眠的具体时间,总不能让其他看我们代码的人也再去算一遍(不是每个人都会写注释的,所以能用代码解决的阅读问题,就不要写在注释上)。

发布了227 篇原创文章 · 获赞 229 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/weixin_38106322/article/details/104589575