有没有一种方法可以精确地测量用Java编写的算法的执行时间?我的任务是设计一种解决TSP的算法,推荐语言为C ++。但是,如果要用Java编写,则必须证明所测量的时间实际上是算法执行时间,而不是JVM在运行算法时可能执行的任何操作所花费的时间。
在执行算法之前和之后立即使用System.nanoTime()应该足够了,或者我可以做更多的事情吗?
简单方法:
最快,最简单的方法是使用以下方法:
long startTime = System.nanoTime();
Algorithm();
long endTime = System.nanoTime();
long duration = (endTime - startTime); //divide by 1000000 to get milliseconds.
如果您正在寻找与此不同的方式,请参考此处,如何在Java中计时方法的执行时间?
微基准方法:
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句