二 工作線程---WorkerThread 顧名思義 它本身就是一個線程,而且是專門用來工作的,工作線程的主要任務是從任務隊列中取出任務 然后執行任務
三 任務隊列---TaskQueue FIFO數據結構 在出對入隊的時候要鎖定對象避免兩個線程重復處理某任務 在這里我采用的是java提供的ConcurrentLinkedQueue隊列,這是一個用鏈表實現的隊 可無限的擴大,具體用法請看doc 用到隊列的地方主要有兩個 addTask(Task task) 和 Task task = queue.poll(); 四 任務接口---Task 任務接口只有一個方法 execute(),使用者只需實現這個接口就可以了
用法:
可以看出用戶的使用非常簡單 在jdk5中 java提供了線程池 有一點注意 千萬不要在servlet中調用線程池 因為servlet本來就是一個線程池
posted on 2008-09-07 11:10 大石頭 閱讀(214) 評論(0) 編輯 收藏 所屬分類: 多線程
Powered by: BlogJava Copyright © 大石頭