利用StopWatch类监控Java代码执行时间并分析性能

springframework中的StopWatch类可以测量一个时间间隔的运行时间,也可以测量多个时间间隔的总运行时间。一般用来测量代码执行所用的时间或者计算性能数据,在优化代码性能上可以使用Stopwatch来测量时间。common.lang包里面也有这个工具,用法类似,但是不能任务名称,查看结果不方便。

示例如下

@Test
public void test7() throws Exception {
StopWatch watch = new StopWatch("测试运行时间");
watch.start("任务1");
TeaPersonCommentModel one = new TeaPersonCommentModel();
one.setId("1");
one.setContent("拼语1");
watch.stop();
watch.start("任务2");
List<TeaPersonCommentModel> test = Lists.newArrayList();
Optional<List<TeaPersonCommentModel>> testOptionl = Optional.ofNullable(test);
watch.stop();
System.out.println(watch.prettyPrint());
}

执行结果如下:

StopWatch '测试运行时间': running time (millis) = 15
-----------------------------------------
ms % Task name
-----------------------------------------
00000 000% 任务1
00015 100% 任务2

三列分别为监控代码段的花费时间(毫秒)、百分比、名称。可以很直观看出每段代码的运行时间以及所占比分比,帮助我们快速找到主要性能问题

上一篇:【BZOJ1012】【JSOI2008】最大数maxnumber


下一篇:使用node新建一个socket服务器连接Telnet客户端并且进行输入的显示