大家好,我是程序猿怪咖。
关于统计代码执行时间的事:
开始 System.currentTimeMillis() 减去 结束 System.currentTimeMillis() 等于 耗时
其实我个人感觉OK的,就这样就蛮好的,很多项目都是这样用的。
越简单越好?
这一篇就是 说点别的玩法,我很欣赏 这个小伙的求知欲, 举一反三,多了解一点没毛病。
第一种玩法,spring util 里面提供的 StopWatch
示例代码:
StopWatch stopWatch = new StopWatch();
stopWatch.start();
//doInsert();
//执行业务等
stopWatch.stop();
System.out.println(stopWatch.getTotalTimeMillis());
效果:
第二种玩法 System.nanoTime()
先不着急看怎么用, 我们看完第一种 StopWatch 的时候, 有没有小伙伴的思维散发够的,想着这spring 封装的统计耗时,自己是怎么实现的?
题外话:
一定要养成这种散发的思维, 很多兄弟朋友都跟我反馈过一些话题,就是说,项目里面没啥东西可学。
其实,这个很正常, 工作过程不是教导过程,你要自己有 纵向 挖掘 、横向 散发的 学习思维。
直接点StopWatch 的源码看一眼, 哦,原理是用的 System.nanoTime() :
System.nanoTime() 代码使用示例 :
long startTime = System.nanoTime();
doInsert();
//执行业务
long endTime = System.nanoTime();
System.out.println((endTime - startTime));
效果 :
第三种玩法 ,平时偶尔也看到别人这么写 new Date。另外,搜索公众号编程怪咖,获取更多学习。
示例代码:
Date startDate = new Date();
// doInsert();
//执行业务等
Date endDate = new Date();
System.out.println((endDate.getTime() - startDate.getTime()));
效果:
省略
里面其实封装了蛮多其他关于时间统计的函数(感兴趣的可以单独去研究研究,特别是参考作者的封装思路 ):
页面更新:2024-06-15
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号