Android线程优先级设置方法技巧
比如很多無關(guān)緊要的線程會(huì)占用大量的CPU時(shí)間,雖然通過了MultiThread來解決慢速I/O但是合理分配優(yōu)先級(jí)對(duì)于并發(fā)編程來說十分重要。
Android在線程方面主要使用的是Java本身的Thread類,我們可以在Thread或Runnable接口中的run方法首句加入:
Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND);//設(shè)置線程優(yōu)先級(jí)為后臺(tái)
這樣當(dāng)多個(gè)線程并發(fā)后很多無關(guān)緊要的線程分配的CPU時(shí)間將會(huì)減少,有利于主線程的處理。
相關(guān)的Thread優(yōu)先級(jí)Android123就Android平臺(tái)專有的定義羅列有以下幾種:
?
? ? ? int THREAD_PRIORITY_AUDIO //標(biāo)準(zhǔn)音樂播放使用的線程優(yōu)先級(jí)
int THREAD_PRIORITY_BACKGROUND //標(biāo)準(zhǔn)后臺(tái)程序
int THREAD_PRIORITY_DEFAULT // 默認(rèn)應(yīng)用的優(yōu)先級(jí)
int THREAD_PRIORITY_DISPLAY //標(biāo)準(zhǔn)顯示系統(tǒng)優(yōu)先級(jí),主要是改善UI的刷新
int THREAD_PRIORITY_FOREGROUND //標(biāo)準(zhǔn)前臺(tái)線程優(yōu)先級(jí)
int THREAD_PRIORITY_LESS_FAVORABLE //低于favorable
int THREAD_PRIORITY_LOWEST //有效的線程最低的優(yōu)先級(jí)
int THREAD_PRIORITY_MORE_FAVORABLE //高于favorable
int THREAD_PRIORITY_URGENT_AUDIO //標(biāo)準(zhǔn)較重要音頻播放優(yōu)先級(jí)
int THREAD_PRIORITY_URGENT_DISPLAY //標(biāo)準(zhǔn)較重要顯示優(yōu)先級(jí),對(duì)于輸入事件同樣適用。
?
總結(jié)
以上是生活随笔為你收集整理的Android线程优先级设置方法技巧的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HandlerThread
- 下一篇: Android studio 如何查看模