2013-03-05 31 views
0

請考慮下面的代碼片段:使用Apache的秒錶收集度量,澄清需要

StopWatch stopWatch = new StopWatch(); 
    stopWatch.start(); 

    Thread.sleep(1000); //< ---- event 1 

    stopWatch.split(); 

    Thread.sleep(2000); //< ---- event 2 

    stopWatch.split(); 

    Thread.sleep(3000); //< ---- event 3 

    System.out.println(stopWatch.getStartTime()); 
    System.out.println(stopWatch.getSplitTime()); 
    System.out.println(stopWatch.toString()); 
    System.out.println(stopWatch.toSplitString()); 

看來,使用StopWatch我可以打破單一的事件分成許多子事件,但即使是這樣,我怎麼能收集此信息?例如,查看上面的代碼,是否有可能認識到你有3個事件,第一個是1秒,第二個是2秒,第三個是3秒?

請讓我知道。

如果秒錶不是一種方法,是否有一個現有的庫我可以用於這樣的事情?

回答

0

getSplitTime()方法返回最近的分割時間。你應該在相關的分割之後調用它。然而,我會用一個新的秒錶(最好是在一個專門的方法中)測量每個事件,這樣你就不必通過減去持續時間來獲取每個事件的時間。

+0

沒錯。這就是我最終做的。想到可能是我缺少一些簡單的東西 – JAM 2013-03-05 16:23:09