Java统计代码的执行时间的6种方法

码叔义 2024-08-03 15:05:02 阅读 80

Java统计代码的执行时间的6种方法

前言:在日前开发中我们会遇到需要统计运行的时间但是又不想运用JMH测试框架,所以本文就汇总了一些比较常用的统计时间的测试方法,总共有6种,我做了一个大概的思维导图:

在这里插入图片描述

方法一,这个方法System.currentTimeMillis()和System.nanoTime()都是java内置的方法。

<code>package com.qfedu.first;

public class test {

public static void main(String[] args) { ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/d0a7982af91b4985afb88c00d5011a69.png#pic_center)

long startTime = System.currentTimeMillis();

//这个获得的是时间戳

long l = System.nanoTime();

try {

Thread.sleep(1000);

} catch (InterruptedException e) {

e.printStackTrace();

}

long endTime = System.currentTimeMillis();

long l2 = System.nanoTime();

System.out.println(endTime-startTime);

System.out.println(l2-l);

}

}

在这里插入图片描述

在这里插入图片描述

方法二,new Date也是java中内置的统计时间的方法,在开始执行前new date()创建一个当前时间的对象,在执行结束后 new Date() 一个当前执行时间,然后再统计两个时间间隔就可以。

<code> Date state = new Date();

Thread.sleep(100);

Date end = new Date();

System.out.println(end.getTime()-state.getTime());

![外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传](https://img-home.csdnimg.cn/images/20230724024159.png?

在这里插入图片描述

origin_url=F%3A%5CJava%5Cjava%E5%9F%BA%E7%A1%80_%E7%9F%A5%E8%AF%86%E7%82%B9%E8%87%AA%E5%B7%B1%5C%E6%88%AA%E5%9B%BE%5Cimage-20240516174456790.png&pos_id=img-TVZzBnxv-1715857990488)

方法三,Spring StopWatch

如果我们使用的是spring或者springboot项目,可以直接在项目中使用StopWatch对象来统计代码执行时间;

<code> StopWatch stopWatch = new StopWatch();

stopWatch.start();

Thread.sleep(1000);

stopWatch.stop();

System.out.println(stopWatch.getTotalTimeMillis());

在这里插入图片描述

里面有很多方法,可以看看有什么其他的功能

结论

mg-uegVAiDt-1715857990489)]

里面有很多方法,可以看看有什么其他的功能

结论

对于其其他框架的方法,底层核心的代码。还是调用了java代码的底层Systeam.nanoTime进行封装的



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。