使用traceview测试方法时间及System.currentTimeMillis()方式错误的错误使用
2012-05-30 13:52
573 查看
写了一个demo,用traceview对里边的print()方法进行测试,最后的时间显示只是180ms。在print()方法前后使用System.currentTimeMillis()方式,时间值相差太远,原因是traceview在stopMethodTracing结束时候需要占用时间将缓存中的信息输出到*.trace文件中。
android.os.Debug.startMethodTracing("MainActivity-print");
long start = System.currentTimeMillis();
print();
android.os.Debug.stopMethodTracing();
long end = System.currentTimeMillis();
Log.i(LOG_TAG, "execute long : " + (end - start));
使用traceview测试时间为180ms
使用System.currentTimeMillis()方式进行为1105ms.
原因就在于
android.os.Debug.stopMethodTracing();调用时,会消耗时间去将缓存中的内容输出到外部存储文件中。
android.os.Debug.startMethodTracing("MainActivity-print");
long start = System.currentTimeMillis();
print();
android.os.Debug.stopMethodTracing();
long end = System.currentTimeMillis();
Log.i(LOG_TAG, "execute long : " + (end - start));
使用traceview测试时间为180ms
使用System.currentTimeMillis()方式进行为1105ms.
原因就在于
android.os.Debug.stopMethodTracing();调用时,会消耗时间去将缓存中的内容输出到外部存储文件中。
相关文章推荐
- java测试方法运行时间 System.currentTimeMillis();
- java测试方法运行时间 System.currentTimeMillis();
- Java中的时间精度 .System.currentTimeMillis() 、System.nanoTime() 方法 使用
- 利用System.currentTimeMillis()方法计算程序运行时间
- System.currentTimeMillis()计算方式与时间的单位转换
- java使用System.currentTimeMillis()获取当前时间戳而不要用new Date()
- Java进阶(十六)使用new Date()和System.currentTimeMillis()获取当前时间戳
- System.currentTimeMillis()计算方式与时间的单位转换
- java使用new Date()和System.currentTimeMillis()获取当前时间戳
- Java进阶(十六)使用new Date()和System.currentTimeMillis()获取当前时间戳
- Java使用new Date()和System.currentTimeMillis()获取当前时间戳
- Java进阶(十六)使用new Date()和System.currentTimeMillis()获取当前时间戳
- System.currentTimeMillis()计算方式与时间的单位转换
- java使用new Date()和System.currentTimeMillis()获取当前时间戳
- java使用new Date()和System.currentTimeMillis()获取当前时间戳(转载)
- System.currentTimeMillis()计算方式与时间的单位转换
- System.currentTimeMillis()计算方式与时间的单位转换
- java使用new Date()和System.currentTimeMillis()获取当前时间戳
- Java中使用new Date()和System.currentTimeMillis()获取当前时间戳的区别(转)(Java进阶-性能提升)
- java使用new Date()和System.currentTimeMillis()获取当前时间戳