我想计算Java中我的函数执行所需的CPU时间。目前,我正在按以下方式执行。
long startTime = System.currentTimeMillis();
myfunction();
long endTime = System.currentTimeMillis();
long searchTime = endTime - startTime;
然而我发现对于相同的输入,根据系统负载的不同,我得到了不同的时间。
那么,如何获取我的函数执行所需的确切CPU时间。
System.currentTimeMillis()
在系统时间改变时也可能会突然改变。因此,我认为测量经过的时间应该始终优先选择System.nanoTime()
而不是System.currentTimeMillis()
。 - JojOatXGME