Android 執行緒池

2021-08-17 02:36:44 字數 1820 閱讀 4154

適用於android的執行緒池

#工具類

/**

* @author yawei

*/public

class}}

}public

(executorservice diskio, executorservice networkio, executor mainthread, scheduledexecutorservice scheduledexecutor)

public()

/** * 定時(延時)任務執行緒池

* * 替代timer,執行定時任務,延時任務

*/public scheduledexecutorservice scheduledexecutor()

/** * 磁碟io執行緒池(單執行緒)

* * 和磁碟操作有關的進行使用此執行緒(如讀寫資料庫,讀寫檔案)

* 禁止延遲,避免等待

* 此執行緒不用考慮同步問題

*/public executorservice diskio()

/** * 網路io執行緒池

* * 網路請求,非同步任務等適用此執行緒

* 不建議在這個執行緒 sleep 或者 wait

*/public executorservice networkio()

/** * ui執行緒

* * android 的mainthread

* ui執行緒不能做的事情這個都不能做

*/public executor mainthread()

private

static scheduledexecutorservice scheduledthreadpoolexecutor()

private

static executorservice diskioexecutor()

private

static executorservice networkexecutor()

private

static

class

mainthreadexecutor

implements

executor

}}

getinstance()

.mainthread()

.execute

(new

runnable()

});getinstance()

.diskio()

.execute

(new

runnable()

});getinstance()

.networkio()

.execute

(new

runnable()

});

getinstance()

.scheduledexecutor()

.schedule

(new

runnable()

},3,timeunit.seconds);

getinstance()

.scheduledexecutor()

.scheduleatfixedrate

(new

runnable()

},5,

3, timeunit.milliseconds);

getinstance()

.scheduledexecutor()

.schedulewithfixeddelay

(new

runnable()

},5,

3, timeunit.milliseconds)

;

Android執行緒池

executors jdk1.5之後的乙個新類,提供了一些靜態工廠,生成一些常用的執行緒池,threadpoolexecutor是executors類的底層實現 1.newsinglethreadexecutor 建立乙個單執行緒的執行緒池。這個執行緒池只有乙個執行緒在工作,也就是相當於單執行緒序列...

Android 執行緒池

threadpoolexecutor int corepoolsize,int maximumpoolsize,long keepalivetime,timeunit unit blockingqueueworkqueue,threadfactory threadfactory corepoolsi...

Android執行緒池詳解

最近在看okhttp的原始碼,看著看著就看到了有執行緒池的地方,以前自己對這個東西就也就感到雲裡霧裡的,所以 想把執行緒池的知識點和原始碼完整的看一篇 1.執行緒池有什麼用?a.重用執行緒池中存在的執行緒,避免因為執行緒的大量建立和銷毀所帶來的效能開銷 完成一項任務的時間t 建立線 2.thread...