對于Android平台上的線程優先級設定來說可以處理很多并發線程的阻塞問題,
比如很多無關緊要的線程會占用大量的CPU時間,雖然通過了MultiThread來解決慢速I/O但是合理配置設定優先級對于并發程式設計來說十分重要。
Android線上程方面主要使用的是Java本身的Thread類,我們可以在Thread或Runnable接口中的run方法首句加入:
Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND);//設定線程優先級為背景
這樣當多個線程并發後很多無關緊要的線程配置設定的CPU時間将會減少,有利于主線程的處理。
相關的Thread優先級Android123就Android平台專有的定義羅列有以下幾種:
int THREAD_PRIORITY_AUDIO //标準音樂播放使用的線程優先級
int THREAD_PRIORITY_BACKGROUND //标準背景程式
int THREAD_PRIORITY_DEFAULT // 預設應用的優先級
int THREAD_PRIORITY_DISPLAY //标準顯示系統優先級,主要是改善UI的重新整理
int THREAD_PRIORITY_FOREGROUND //标準前台線程優先級
int THREAD_PRIORITY_LESS_FAVORABLE //低于favorable
int THREAD_PRIORITY_LOWEST //有效的線程最低的優先級
int THREAD_PRIORITY_MORE_FAVORABLE //高于favorable
int THREAD_PRIORITY_URGENT_AUDIO //标準較重要音頻播放優先級
int THREAD_PRIORITY_URGENT_DISPLAY //标準較重要顯示優先級,對于輸入事件同樣适用。