测试app启动时间
来源:6-5 如何实现类似微信右滑返回的效果?

用户1148542
2019-07-10
private ExecutorService executorService;//在真实的项目中不要使用这个类
//参考AsyncTask源码
private static final int CPU_COUNT = Runtime.getRuntime().availableProcessors();
private static final int CORE_POOL_SIZE = Math.max(2, Math.min(CPU_COUNT - 1, 4));
private long startTime;
@Override
public void onCreate() {
super.onCreate();
// Debug.startMethodTracing("zhou");
startTime = System.currentTimeMillis();
executorService = Executors.newFixedThreadPool(CORE_POOL_SIZE);
executorService.submit(new Runnable() {
@Override
public void run() {
a();
}
});
executorService.submit(new Runnable() {
@Override
public void run() {
b();
}
});
executorService.submit(new Runnable() {
@Override
public void run() {
c();
}
});
executorService.submit(new Runnable() {
@Override
public void run() {
d();
}
});
Log.e("MyApp","启动时间-->"+(System.currentTimeMillis()-startTime));
// Debug.stopMethodTracing();
}
public void a(){
Log.e("MyApp","a方法执行了-->");
try {
Thread.sleep(500);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
public void b(){
Log.e("MyApp","b方法执行了-->");
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
public void c(){
Log.e("MyApp","c方法执行了-->");
try {
Thread.sleep(1500);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
public void d(){
Log.e("MyApp","d方法执行了-->");
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
老师这是我优化app启动的速度,这个测试app启动的时间总感觉不对。
写回答
1回答
-
bennyhuo
2019-07-11
是啊,你这跟app启动时间没有关系啊,打印出来的也是executor.submit了几个runnable的时间,而且这几个runnable跟app启动时间也没什么关系呀
00
相似问题