我想知道某个方法在我的Android应用程序中执行需要多长时间。我的第一个想法是做这样的事情:
Date date1 = new Date();
doStuff();
Date date2 = new Date();
//compare date difference in ms
但是对于初学者来说,日期对象似乎没有.getMilliseconds()
,这就是我所追求的。有没有更简单和/或更好的方法来解决这个问题?
由于
答案 0 :(得分:3)
您可能希望使用System.nanoTime()
来计算时间,因为它使用可用的最高精度计时器。测试代码效率时要做的另一件事是不仅要运行一次,而是重复运行,并将平均时间作为估算。从长远来看,这会带来更好的结果,因为如果其他程序也试图运行,CPU使用率可能会飙升。
答案 1 :(得分:0)
System.currentTimeMillis()有什么问题?
long before = System.currentTimeMillis();
doStuff();
long after = System.currentTimeMillis();
答案 2 :(得分:0)
您可以使用Android分析工具,当应用程序在模拟器中运行时,它可以在漂亮的图形视图中执行此类操作。
此处有更多信息:http://developer.android.com/tools/debugging/debugging-tracing.html