ThreadPoolExecutor4個構造方法

2021-10-23 09:04:03 字數 580 閱讀 3212

threadpoolexecutor是在android中使用執行緒池時候,用到的類。

為什麼要使用執行緒池?

1、執行緒的建立和銷毀,需要占用記憶體資源,對效能影響很大。

2、執行緒建立的數量太多時候,反而執行速度會下降。比如4核cpu的手機,最好開4*2+1=9個執行緒,是執行速度最快的。

執行緒池的4個構造方式,其中3個構造引數少的方法,最終都呼叫都是構造引數最多的那個。

通常情況下,我們使用jdk已經給我們預製的4個建立執行緒池的方法。

executors.newfixedthreadpool():建立乙個定長的執行緒池,如果超出,則執行緒進入等待狀態

executors.newsinglethreadexecutor():建立只有乙個執行緒的執行緒池,保證所有的執行緒按照順序執行

executors.newcachedthreadpool():建立乙個可變數量的執行緒池,執行緒池中數量小於設定的最大數量時候,則會繼續建立執行緒。

executors.newscheduledthreadpool():定長的執行緒池,執行定時任務。

這4個方法中,前3個方法,其實都呼叫的是threadpoolexecutor的構造方法。

多型 4 虛析構和純虛析構

下面我們通過乙個例子了解一下。include include using namespace std 父類 我們可以從執行結結果中看到,子類cat的析構函式沒有被呼叫,也就意味著我們在子類的建構函式中申請的一塊堆記憶體沒有被釋放。這樣是很不安全的。解決方法 通過虛析構或者純虛析構 將父類的析構函式變...

Flex 4架構的元件開發

flex 4架構的元件 將flex 4 的組成部分視為系統的原子組成 高度可重用 沒有外部的依賴 一切都能傳遞到他們 參與flex中的生命週期 由uicomponent定義 知道有多大,並能很好地布局 在as3中的可重用的元件被寫成m xml 元件,它們作為子類 children 是不可以被擴充套件...

Flex 4架構的元件開發

flex 4架構的元件開發 2010年11月19日 這是實驗室透露的一些正在討論的一般感念.將flex 4 的組成部分視為系統的原子組成 高度可重用 沒有外部的依賴 一切都能傳遞到他們 參與flex中的生命週期 由uicomponent定義 知道有多大,並能很好地布局 在as3中的可重用的元件被寫成...