我有一个问题,我不知道如何解决它。
我需要测量执行某个函数所需的时间。秒表函数可以测量毫秒级别的时间,但不够精确,因此我使用了纳秒级别的测量方法。
问题在于,这个函数结束得非常快,即使使用纳秒级别的秒表也无法测量到它。
我知道秒表是可以工作的,因为我尝试在我的函数中加入例如
这是我的代码:
我需要测量执行某个函数所需的时间。秒表函数可以测量毫秒级别的时间,但不够精确,因此我使用了纳秒级别的测量方法。
问题在于,这个函数结束得非常快,即使使用纳秒级别的秒表也无法测量到它。
我知道秒表是可以工作的,因为我尝试在我的函数中加入例如
Thread.sleep(1)
(Thread.sleep是以毫秒为单位计量的),并且我能得到时间,但是没有Thread.sleep
,我的时间总是0。 有什么建议吗?这是我的代码:
long startTimeLocalNS=0;
long stopTimeLocalNS = 0;
startTimeLocalNS = System.nanoTime();
if (something)
{
/*my Code;*/
}
stopTimeLocalNS = System.nanoTime();
disconnectTime = (stopTimeLocalNS - startTimeLocalNS);
something
== true 吗? - Peter Lawreylong start = System.nanoTime(); long time = System.nanoTime() - start
,干杯。 - Peter Lawrey