Java简单计时的实现案例(可以用来限时循环)

时间:2021-07-30 00:21:41

在软件开发过程中经常需要知道程序运行的大概时间,或者需要在规定时间内取数据,这是可以使用下面的方法获取时间段,还可以用在限时循环

方法一:

?
1
2
3
4
5
6
7
/** 获取当前系统时间*/
long startTime = System.currentTimeMillis();
/** 程序运行 processRun();*/
 
/** 获取当前的系统时间,与初始时间相减就是程序运行的毫秒数,除以1000就是秒数*/
long endTime = System.currentTimeMillis();
long usedTime = (endTime-startTime)/1000;

方法二:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//初始化变量
Date before=new Date();
Date now=new Date();
 
//定时循环
while(t<=10//循环时间){
 
   // 计算循环总时长
   now = new Date();
   // 现在的时间减去开始的时间可以计算出来使用的时间
   t = (now.getTime() - before.getTime())/1000;
 
   //循环内容
    
}

补充知识:Java中更精确的计时代码

我们一般的java运输计时代码是

?
1
2
3
4
long begintime = System.currentTimeMillis();
//运算代码
long endtinme=System.currentTimeMillis();
long costTime = (endtime - begintime);

但是,如果运算时间很短的时候,这个一个是现在机器太厉害,还有由于.currentTimeMillis()是1970年1月1日到现在的毫秒数,估计应该把很多小数位省略了,没看过代码,猜的,呵呵。结果一般是0,无法显示算法消耗时间,这个时候可以用nanoTime(),纳秒。

?
1
2
3
4
5
long begintime = System.nanoTime();
//运算代码
long endtime = System.nanoTime();
long costTime = (endtime - begintime)/1000;
//要换算为微秒,就除上1000,就可以

以上这篇Java简单计时的实现案例(可以用来限时循环)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://www.cnblogs.com/ZenoLiang/p/11014251.html