Stop Watch - java获取方法的具体执行时间
? ? ? ? try {
? ? ? ? ? ? vc = inventory.getVCenterInfo();
? ? ? ? } catch (Exception e) {
? ? ? ? ? ? logger.error("cannot get VCenter info: " + vCenter , e);
? ? ? ? ? ? return;
? ? ? ? }
? ? ? ? watch.stop();
logger.info(String.format("End to get information from VCenter: %s, spend time:%s(ms) ", vCenter, watch.getTime()));
?
2. 更加精确的模拟:
- "Time?consumed?by?step1?and?step2:?"+stWatch.getSplitTime());??
- ??
- ???
- ??
- stWatch.stop(); ?
?
但如上的代码有些许不足:?每次getSplitTime得到的值都是当前所有步骤的总和,而不是当前这个步骤的耗时值,以上面代码为例,它没有直接地得出step1和step2两个步骤的各自耗。
?
于是原来基础上加了两个方法(加了方法的源码见附件): splitAndSaveTime和getSplitTimeByStep。这样的演示代码如下:
?
1 楼 freezingsky 2013-07-03 只是简单的介绍API就没什么意思了。如果能进一步的说明,二者的差异性,以及后者的实现方式,相信会更好!