執行緒池:是執行緒的容器,其中的執行緒可以反覆使用。jdk1.5內建了執行緒池。
原理:執行緒池的執行緒是儲存在乙個集合中的,以linkedlist集合為例,當從執行緒池中取出乙個執行緒時,集合會呼叫 v removefirst()方法取出第乙個執行緒;當執行緒使用完之後會自動返還給執行緒池,即集合會呼叫addlast()方法把執行緒新增會集合中。
1、使用executors工具類的靜態方法獲取執行緒池:
static executorservice newfixedthreadpool(int nthread)
//1、使用executors工具類的靜態方法獲取執行緒池,設定執行緒數量為3
executorservice es = executors.
newfixedthreadpool(3
);
2、建立乙個類例項化runnable介面,編寫執行任務run();
public
class
person
implements
runnable
}
3、使用executorservice介面的submit(runnable r)方法取出乙個執行緒執行run()
es.
submit
(new
person()
);
執行緒池的使用
簡而言之 兩個類 執行緒池的 類 public class threadpoolproxyfactory return mnormalthreadpoolproxy return public static threadpoolproxy createdownloadthreadpoolproxy ...
執行緒池的使用
執行緒池能幫助我們有效的管理執行緒,避免重複的建立銷毀執行緒。newfixedthreadpool 固定執行緒數量的執行緒池 newsinglethreadexecutor 返回乙個只有乙個執行緒的執行緒池 newcachedthreadpool 返回乙個可根據實際情況調整執行緒數量的執行緒池 ne...
執行緒池的使用
如果在使用執行緒的時候就去建立乙個新執行緒,當併發的執行緒數量很多,並且每個執行緒都是執行乙個時間很短的任務就結束了,系統在建立和銷毀執行緒上花費的時間和消耗的系統資源都相當大,甚至要比處理任務的時間和資源要多的多,同時活動的執行緒也需要消耗系統資源.executor是乙個頂層介面,它只宣告了乙個方...