Android 性能优化-线程优化

在某一刻,只有一个线程占用一个CPU,处理任务。多线程是多个任务被CPU闪速切换执行任务。
分时调度模式:轮流获取、均分CPU时间。
抢占式调度模型:优先级高的获取

1.HandlerThread

自带消息循环,串行执行,长时间运行,不断获取任务。

https://blog.csdn.net/chentaishan/article/details/118584100

2.IntentSerivice

优先级高,不容易被杀死
https://blog.csdn.net/chentaishan/article/details/104344454

3.AsyncTask

https://blog.csdn.net/chentaishan/article/details/104335445

4.线程池

不做说明,自行查阅

5 Rxjava

待补充

6. 监控创建Thread

监控创建Thread,避免滥用thread。可以使用Hook手段

 DexposedBridge.hookAllConstructors(Thread.class, new XC_MethodHook() {
    
    
     @Override
     protected void afterHookedMethod(MethodHookParam param) throws Throwable {
    
    
         super.afterHookedMethod(param);
         Thread thread = (Thread) param.thisObject;
         LogUtils.i(thread.getName()+" stack "+Log.getStackTraceString(new Throwable()));
     }
 });

Guess you like

Origin blog.csdn.net/chentaishan/article/details/118583728