org.springframework.util.StopWatch使用说明

StopWatch是一个简单实用的秒表工具类,可以用来评估代码块的执行时间和性能。
以下是StopWatch的主要用法:

  1. 创建StopWatch对象
StopWatch stopWatch = new StopWatch();
StopWatch stopWatch2 = new StopWatch("读取商品信息");
  1. 启动秒表计时
stopWatch.start(); 
  1. 执行需要计时的代码块
  2. 停止秒表计时
stopWatch.stop(); 
  1. 获取执行时间
//这将获取从start()到stop()的总执行时间,以毫秒为单位。
long time = stopWatch.getTotalTimeMillis();
  1. 间隔计时
    可以通过多次调用start()和stop()进行间隔计时。
    例如:
StopWatch stopWatch = new StopWatch();
stopWatch.setKeepTaskList(true);

stopWatch.start("任务1");
doSomething();
stopWatch.stop();

stopWatch.start("任务2");
doSomethingElse();
stopWatch.stop();

long task1Time = stopWatch.getTaskTimeMillis("任务1");
long task2Time = stopWatch.getTaskTimeMillis("任务2");
System.out.println("任务1时间: " + task1Time + "ms");
System.out.println("任务2时间: " + task2Time + "ms");

然后可以通过getTaskTimeMillis(String taskName)获取指定任务的执行时间。
这需要先调用setKeepTaskList(true)保留任务清单。

  1. 打印友好的报告
    可以调用prettyPrint()方法打印一个格式友好的时间报告,如:

ms % Task name

1000 50% 任务1
1000 50% 任务2
2000 100%

这需要先进行间隔计时,并设置setKeepTaskList(true)。
它会打印:

  • 每个任务的执行时间(毫秒ms)
  • 占总时间的百分比%
  • 任务名称
  • 总共的执行时间
  1. 重置秒表
    可以调用reset()方法重置秒表,以再次从零开始进行计时。

总结

StopWatch的主要用法是:

  1. 创建StopWatch对象
  2. 调用start()开始计时
  3. 执行代码并获取时间
  4. 调用stop()停止计时
  5. 获取总时间或任务时间
  6. 调用prettyPrint()打印友好报告
  7. 调用reset()重置秒表

它提供了几个有用的方法:

  • start(): 开始秒表计时
  • stop(): 停止秒表计时
  • getTotalTimeMillis(): 获取从start到现在的总执行时间(毫秒)
  • getLastTaskTimeMillis(): 获取上次start到stop的计时时间(毫秒),可以用于间隔计时
  • setKeepTaskList(boolean): 设置是否保留任务清单,如果为true可以获取多个start-stop间隔时间
  • getTaskCount(): 获取start-stop间隔的数量
  • stopWatch.prettyPrint()方法会将StopWatch记录的计时信息以友好的格式打印出来。
  • getTaskInfo(TaskInfo taskInfo): 获取指定间隔的计时信息
  • reset()方法重置秒表,以再次从零开始进行计时。

你可能感兴趣的:(java开发笔记,java)