首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

线程池示范代码,请大家多指教

2012-10-28 
线程池示例代码,请大家多指教包结构srctestTestThreadPool测试类threadThreadPool线程池类WorkThread工作

线程池示例代码,请大家多指教
包结构
src
  test
    TestThreadPool          测试类
  thread
    ThreadPool              线程池类
    WorkThread              工作线程类
    TaskMonitorThread       任务监测线程类
    TaskTimeOutThread       任务超时监测线程类
  task
    TaskManager             任务管理器
    WorkTask                任务接口
    WorkTaskImp             正常任务类
    WorkTaskAImp            异常任务类
    WorkTaskBImp            超时任务类
  event
    AbstractEvent           任务事件类
    BeginTaskEvent          任务执行开始事件类
    EndTaskEvent            任务执行结束事件类
    TaskRunTime             任务运行时间类
    TaskTimeOutEvent        任务执行超时事件类

源代码

import java.util.*;public class ThreadPool {private LinkedList<Runnable> taskList = null;private boolean closed = false;public ThreadPool() {this.taskList = new LinkedList<Runnable>();for (int i = 0; i < 4; i++) {Thread work = new WorkThread();work.setDaemon(true);work.start();}}public synchronized void addTask(Runnable task) {if (closed)return;if (null == task)return;this.taskList.add(task);notify();}private synchronized Runnable getTask() {while (this.taskList.size() == 0) {try {if (closed)return null;wait();} catch (InterruptedException e) {e.printStackTrace();}}return this.taskList.removeFirst();}public void close() {synchronized (this) {this.closed = true;}}private class WorkThread extends Thread {public void run() {while (true) {Runnable task = null;task = getTask();if (null == task)return;task.run();}}}}


哥们,这个多少年前就存在吧!!!!
54 楼 snowhui 2009-08-31   如果你用是ssh在添加spring ,hibernate ,struts你就可以建连接池。 55 楼 xingzhaozhong 2009-08-31   yangke_love 写道JDK5.0中有相关的线程管理内容,你可以参考下Think In Java 第四版
是这样的,Thinking In Java写的很详细了 56 楼 belover 2009-09-05   贴大段的代码。实在是懒得看。建议:把UML 时序图,活动图,类图。
设计清晰一目了然。细节的实现。就是 技术人员 本身素质的问题了。

还有一点。的确如楼上所说。Think In Java 第四版

热点排行