再见,再见,5 * 60 * 1000 //五分钟,再见,再见

在这篇文章中,我将讨论一个在1.5版中首次引入的类,我使用了太多,但是与一些人交谈,他们说他们不知道它的存在。 此类是TimeUnit

TimeUnit类表示给定粒度单位的持续时间,还提供了转换为不同单位的实用方法以及执行计时延迟的方法。

TimeUnit是具有七个粒度级别的枚举: DAYS,HOURS,MICROSECONDS,MILLISECONDS,MINUTES,NANOSECONDSSECONDS

我发现有用的第一个功能是 convert 方法。 使用这种方法,您可以告别典型:

私有静态最终int FIVE_SECONDS_IN_MILLIS = 1000 * 5;

像这样:

长持续时间= TimeUnit.MILLISECONDS.convert(5,TimeUnit.SECONDS);

但是,也存在以更好的可读性方法进行的等效操作。 例如,相同的转换可以表示为:

长持续时间= TimeUnit.SECONDS.toMillis(5);

第二组真正有用的操作是与停止当前线程有关的操作。

例如,您可以使用方法休眠当前线程

TimeUnit.MINUTES.sleep(5);

代替:

Thread.sleep(5 * 60 * 1000);

但是您也可以将其与join一起使用,并等待超时。

线程t = new Thread(); TimeUnit.SECONDS.timedJoin(t,5);

因此,正如我们可以看到的那样, TimeUnit类虽然具有表达能力,但您可以像以前那样做,但是可以采用更时尚的方式。 请注意,您还可以使用静态导入,并且代码将更具可读性。

参考: 再见,再见,5 * 60 * 1000 //“五分钟,再见,再见”,来自我们的JCG合作伙伴 Alex Soto,来自“ 一个罐子统治他们”所有博客。


翻译自: https://www.javacodegeeks.com/2012/06/bye-bye-5-60-1000-five-minutes-bye-bye.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/372564.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

windows如何调用Linux的API,Windows和Native API中的系统调用?

最近,我在* NIX操作系统中使用了很多汇编语言。我想知道Windows域。Linux中的调用约定:mov $SYS_Call_NUM, %eaxmov $param1 , %ebxmov $param2 , %ecxint $0x80而已。这就是我们应该如何在Linux中进行系统调用。linux中所有系统调用的参考:关…

maven生命周期和插件

maven生命周期和插件 生命周期 maven的生命周期有三套,互相独立。每个生命周期含有不同阶段,常用如下 clean 清理项目 pre-clean 执行清理前需要完成的工作clean 清理上一次构建生成的文件post-clean 执行清理后需要完成的工作default 构建项目 validate…

Java EE 6测试第二部分– Arquillian和ShrinkWrap简介

在Java EE 6测试的第一部分中,我简要介绍了使用Glassfish嵌入式容器的EJB 3.1 Embeddable API,以演示如何启动该容器,如何在项目类路径中查找bean以及运行非常简单的集成测试。 这篇文章重点介绍Arquillian和ShrinkWrap以及为什么它们是用于企…

linux内存分配堆栈数据段代码段,linux – LD_PRELOAD堆栈和数据段内存分配

你好,我正在编写一个Linux模块(基于名为“Ccontrol”的GitHub项目)来创建缓存分区(a.k.a页面着色),以减轻定时侧通道攻击(用于防止Prime Probe等攻击).我已经使用LD_PRELOAD系统env变量来覆盖所有malloc(),calloc()和free()调用,并用颜色感知调用替换它们.现在我正在寻找颜色堆…

【腾讯Bugly干货分享】Android内存优化总结实践

本文来自于腾讯Bugly公众号(weixinBugly),未经作者同意,请勿转载,原文地址:https://mp.weixin.qq.com/s/2MsEAR9pQfMr1Sfs7cPdWQ 导语 智能手机发展到今天已经有十几个年头,手机的软硬件都已经发…

以编程方式向OpenJPA注册实体类型

我刚刚开始为Isis开发 OpenJPA对象库 。 在一般情况下,可以在persistence.xml文件中注册实体类型。 但是,Isis是一个框架,可以构建自己的元模型,并且可以自行确定哪些类构成实体。 因此,我不想强​​迫开发人员重复自己…

linux redis客户端,Redisson 3.4.0和2.9.0发布,Redis客户端

Redisson 3.4.0和2.9.0发布,Redis客户端发布时间:2017-04-27 09:12:16来源:红联作者:baihuoRedisson于2017年4月26日发布了3.4.0和2.9.0版本Redisson是架设在Redis基础上的一个Java驻内存数据网格(In-Memory Data Grid)。充分的利用了Redis键值数据库提供的一系列优…

LeetCode 349 Intersection of Two Arrays

Given two arrays, write a function to compute their intersection. Example: Given nums1 [1, 2, 2, 1], nums2 [2, 2], return [2]. 思路: 利用ArrayList的contains(Object o)方法进行交集的查询。 解法: 1 import java.util.ArrayList;2 3 publi…

shell脚本1——变量 $、read、``

与Shell变量相关的几个命令: 变量只在当前Shell中生效. source 这个命令让脚本影响他们父Shell的环境(. 可以代替source命令) export 这个命令可以让脚本影响其子Shell的环境 () unset 从环境中删除变量 其他几个与变量有关的命令&#xff1…

令人印象深刻的第一个Apache Camel版本

为了准备下周的CamelOne会议,我花了一些时间回顾一下Apache Camel项目的历史。 因此,除其他外,我了解了Apache Camel的第一个正式1.0版本 。 Apache Camel 1.0 – 5年前 我看的越多,这个版本的事实给我留下了深刻的印象。 现在您…

Linux禁用user01账户,Linux 管理用户 useradd

创建用户、设置密码、修改用户、删除用户:useradd testuser 创建用户testuseruseradd [选项]useradd 命令选项-u uid:指定新用户的uid,默认用当前最大uid加1-g group:指定新用户所在的组(私有组),该组必须存在-G group:指定新用户的附加组-d dir:指定新用户的自家目…

css小细节

1. 文字居中显示 水平居中: text-align: center; 垂直居中: line-height: (height); 2.子元素相对于父元素的绝对布局。 父元素一定要 position: relative/absolute/fixed; 默认position 是static 转载于:https://www.cnblogs.com/zcancandice/p/5…

为什么在2012/2013年我将在新的Enterprise Java项目中继续使用Spring *和* Java EE

自从我担任技术决策职务以来已经过去了一年多,很高兴看到我仍然与之保持着完美的和谐。 几个月前,我在KaiWhner的一个不错的博客中写了一个有关JEE与Spring的答案。 如果观点没有不同,那么讨论的附加值在哪里? 我确实同意Kai的许多…

linux ubuntu 五笔输入法,ubuntu下安装fcitx五笔输入法

安装fcitx输入法sudo add-apt-repository ppa:fcitx-team/stable #添加安装源,apt-get 添加,nightly源也可以sudo apt-get update #更新源,否则无法安装fcit…

浅谈Windows下SVN在Android Studio中的配置、基本使用及解除关联

看到网上很多关于svn环境配置和关联Android-Studio的很多博文,发现很零散,想集大家所长整理一下: 在AndroidStudio中开发版本控制中,除了Git就是SVN,和Eclipse不同Android Studio没有提供单独的插件,只能和…

四. 基于环视Camera的BEV感知算法-BEVDepth

目录 前言0. 简述1. 算法动机&开创性思路2. 主体结构3. 损失函数4. 性能对比总结下载链接参考 前言 自动驾驶之心推出的《国内首个BVE感知全栈系列学习教程》,链接。记录下个人学习笔记,仅供自己参考 本次课程我们来学习下课程第四章——基于环视Cam…

【腾讯Bugly干货分享】Android Patch 方案与持续交付

本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57a31921ac3a1fb613dd40f3 Android 不仅系统版本众多,机型众多,而且各个市场都各有各的政策和审核速度&#xff0…

App Engine中的Google Services身份验证,第1部分

这篇文章将说明如何构建一个简单的Google App Engine(GAE)Java应用程序,该应用程序可针对Google进行身份验证,并利用Google的OAuth授权访问Google的API服务(例如Google Docs)。 此外,在Google已…

c语言中空格的作用是什么,C语言中空格和\0的区别

\0 为字符串结束符,比如说:abcd (空格)cdefg;存入数组时,空格作为一个字符占有一个字节的空间,我们可以把它看着一个字符去处理。而“\0 ” 则是这个字符串的结束标识符,也占有一个字节的空间,表…

C++11 新特性:Lambda 表达式

参考文章:https://blogs.oracle.com/pcarlini/entry/c_1x_tidbits_lambda_expressions 或许,Lambda 表达式算得上是 C 11 新增特性中最激动人心的一个。这个全新的特性听起来很深奥,但却是很多其他语言早已提供(比如 C#&#xff0…