日期:2014-05-20  浏览次数:20701 次

求个计时器
作课程设计时用到的,大家都用获取系统时间的方法做的计时。能不能做个像秒表的啊??谢谢了


------解决方案--------------------
具体点
------解决方案--------------------
long func() {
long startTime = System.currentTimeMillis();
//....算法代码段。
long endTime = System.currentTimeMillis();

return (endTime - startTime);
}
------解决方案--------------------
LZ你要明白,你要想获得一个稳定的时间计量单位,绝对不可能仅仅通过软件环境模拟得到的,所以你想仅仅通过jvm这个“软”系统去建立自己的计时单位是不可能的。事实上,System.currentTimeMillis()就是个native本地方法,它也是利用c访问系统底层(也有可能直接访问硬件,这个我确实不知道了。)来获取时间的。你如果真的想自己写,就用c去自己访问系统时钟,然后用jni在java程序里调用。
------解决方案--------------------
用多线程可以实现,但是多线程它为了实现时间上的精确,也是通过调用系统时间获得时间差来让线程休眠的.所以,这样更浪费资源,还不如自己直接调用来的好.