一、TimeUnit和Thread.sleep()

TimeUnit是java.util.concurrent包下面的一个类,TimeUnit提供了可读性更好的线程暂停操作,通常用来替换Thread.sleep()。

大部分的程序员都已经熟悉了Thread.sleep(),并把它当成了我们的一种习惯。

举个例子:

Thread.sleep(1200000);

当我们看到这段代码的时候,括号里面的是毫秒,我们需要单位的换算才会有个大致的了解到底睡眠了多少时间。

我们再看看TimeUnit:

TimeUnit.MINUTES.sleep(4);

我们就可以很清楚的看到,该线程睡眠了4分钟。

关于TimeUnit还有些常用的方法:

//关于秒的常用方法

TimeUnit.SECONDS.toMillis(1) 1秒转换为毫秒数

TimeUnit.SECONDS.toMinutes(60) 60秒转换为分钟数

TimeUnit.SECONDS.sleep(5) 线程休眠5秒

TimeUnit.SECONDS.convert(1, TimeUnit.MINUTES) 1分钟转换为秒数

//TimeUnit.DAYS 日的工具类

//TimeUnit.HOURS 时的工具类

//TimeUnit.MINUTES 分的工具类

//TimeUnit.SECONDS 秒的工具类

//TimeUnit.MILLISECONDS 毫秒的工具类

可以进行时间单位的换算。

二、总结

以后我们用到Thread.sleep()的时候,我们尽可能的用TimeUnit来替换它,这样不仅可以提高代码的可读性,也可以增加我们对java.util.concurrent的熟悉。因为TimeUnit是java.util.concurrent的一个重要的API。

注:初学者,写的不好请见谅,如有相关问题记得私信我

java timeunit_java并发之TimeUnit相关推荐

  1. java timeunit_java并发之TimeUnit理解

    TimeUnit是java.util.concurrent包下面的一个类,TimeUnit提供了可读性更好的线程暂停操作,通常用来替换Thread.sleep(),在很长一段时间里Thread的sle ...

  2. java多线程并发之旅-20-同步工具类。闭锁/栅栏/信号量/阻塞队列/FutureTask

    同步工具类 同步工具类主要包括闭锁(如CountDownLatch),栅栏(如CyclicBarrier),信号量(如Semaphore)和阻塞队列(如LinkedBlockingQueue)等: F ...

  3. java多线程并发之旅-34-性能与可伸缩性

    概述 编写正确的程序很难,而编写正确的并发程序则难上加难.与串行程序相比,在并发程序中存在更多容易出错的地方. 那么,为什么还要编写并发程序? 线程是Java语言中不可或缺的重要功能,它们能使复杂的异 ...

  4. java多线程并发之旅-09-java 生产者消费者 Producer/Consumer 模式

    生产者消费者模式 在实际的软件开发过程中,经常会碰到如下场景:某个模块负责产生数据,这些数据由另一个模块来负责处理(此处的模块是广义的,可以是类.函数.线程.进程等).产生数据的模块,就形象地称为生产 ...

  5. JAVA游戏开发之FPS精准控制

    目录 JAVA游戏开发之FPS精准控制... 1 1       概述... 2 1.1        编写目的... 3 2       FPS精准控制... 3 2.1        FPS描述. ...

  6. java 并发开发之AQS

    java 并发开发之AQS AQS 是什么,有什么作用? ① 是什么:AQS 是抽象队列同步器,AQS定义了一套多线程访问共享资源的同步器框架,许多同步类实现都依赖它 ② 有什么作用:为Java的并发 ...

  7. java并发之TimeUnit

    2019独角兽企业重金招聘Python工程师标准>>> 一.TimeUnit和Thread.sleep() TimeUnit是java.util.concurrent包下面的一个类, ...

  8. java timeunit_java – 了解TimeUnit

    我看了一下TimeUnit和toMillis()方法. public long toMillis(long paramLong) { throw new AbstractMethodError(); ...

  9. java timeunit_Java TimeUnit使用

    TimeUnit TimeUnit是java.util.concurrent包下面的一个类,表示给定单元粒度的时间段. 常用的颗粒度 TimeUnit.DAYS //天 TimeUnit.HOURS ...

最新文章

  1. [您有新的未分配科技点]可,可,可持久化!?------0-1Trie和可持久化Trie普及版讲解...
  2. 预告|第四届工业大数据创新竞赛决赛答辩倒计时
  3. 一行代码快速搞定Flowable断点下载(上)
  4. jquery中$运算符的后代选择器
  5. kafka 名词解释及原理解析过程(三)
  6. rabitMQ-centos7安装
  7. Android 工程引入自定义Library后,工程无法识别Library中的类
  8. 【转】Tomcat+MyEclipse
  9. Exchange2010外部传输域的使用方法
  10. 如何选择开源许可证?
  11. ucc编译器(优化)
  12. 【网络】HTTPS 怎么保证数据传输的安全性
  13. 在 GitHub 上提交代码必备指南!
  14. 记录一次浏览器主页被劫持的经历
  15. python gif图 ctf_从两道CTF实例看python格式化字符串漏洞
  16. 【工业控制】基于matlab多变量动态矩阵预测控制(DMC)【含Matlab源码 1499期】
  17. windows网卡初始化
  18. GSM/CDMA/GPRS介绍
  19. 数据分析训练营-pandas
  20. python从srt文件中只提取歌词

热门文章

  1. 智能手机照片被误删如何恢复
  2. 叠片过滤器:全自动叠片盘式过滤器介绍
  3. 燕大计算机研究生毕业待遇,研究生人均“月薪上万”是真是假,过来人坦言:想想就好,别认真...
  4. 元宇宙NFT最近最火的项目,该如何选择平台呢
  5. WAP中利用截取手机号码达到自动登入的一段源码(转)
  6. 波特率dlm_ARM学习随笔(13)UART的理解
  7. JAVA 下的 pgp加密解密示例
  8. 程序员基础的硬件知识(cpu、主板、显卡、内存条等)
  9. 10款堪称神器的免费电脑软件推荐
  10. 解决苹果手机按钮的圆角问题