鉴于app启动速度慢的问题,接到了优化速度的任务。
无非就是异步初始化,延迟初始化,懒加载三种,我先对application中的初始化代码块做异步初始化
优化后加快了300ms,使用线程池,大概代码如下
class Application{
onCreate(){
//do sth
postTask(new Runnable());
}
void postTask(Runnable task){
//向线程池添加任务
}
}
之后测试启动速度是1200ms+
但是!但是!!但是!!!我在线程池运行前加了if(1==1)return
那我就想了,都说application中不要创建线程池,这会导致性能消耗?所以我尝试使用HandlerThread和Handler的组合,然后进行post,结果依然是1200ms+
所以所以,我来求助上csdn上的大神,application中应该如何正确优化?