Android修改进程优先级
问题描述
客户想提高第三方app在后台运行时的优先级,保证app的效果不会受影响。
解决思路
方案一:
客户询问是否可以通过renice命令直接修改进程优先级。
方案二:
经过查找资料后发现进程在后台运行时的优先级由oom_adj的值表现。对于除了Native进程以外的其他所有进程来说,都会有一个oom_adj值,这个值越大代表优先级越低,越会被系统杀死。系统会根据当前的内存情况计算出一个临界值:min_score_adj,对于进程来说会根据oom_adj的值计算出一个oom_score_adj,高于min_score_adj的进程会被杀死。因此客户问题就转换成了修改第三方app的进程的oom_adj到最小的值。