package com.lh.fly.common.assist;
/**
* 时间均值计算器,只能用于单线程计时。
*
* @author MaTianyu
* 2013-12-12上午1:23:19
*/
public class TimeAverager {
/**
* 计时器
*/
private TimeCounter tc = new TimeCounter();
/**
* 均值器
*/
private Averager av = new Averager();
/**
* 一个计时开始
*/
public long start() {
return tc.start();
}
/**
* 一个计时结束
*/
public long end() {
long time = tc.duration();
av.add(time);
return time;
}
/**
* 一个计时结束,并且启动下次计时。
*/
public long endAndRestart() {
long time = tc.durationRestart();
av.add(time);
return time;
}
/**
* 求全部计时均值
*/
public Number average() {
return av.getAverage();
}
/**
* 打印全部时间值
*/
public void print() {
av.print();
}
/**
* 清楚数据
*/
public void clear() {
av.clear();
}
}