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

一个容易的线程池

2012-10-26 
一个简单的线程池import?java.util.LinkedList ????public?class?AppThreadPool?{ ??????private?int?poo

一个简单的线程池

    import?java.util.LinkedList; ????public?class?AppThreadPool?{ ??????private?int?poolSize; ????????private?LinkedList?queue; ????????public?AppThreadPool(int?poolSize)?{ ??????????this.poolSize?=?poolSize; ??????????queue?=?new?LinkedList(); ??????????FileWorker[]?Pool?=?new?FileWorker[poolSize]; ??????????for?(int?i?=?0;?i?<?Pool.length;?i++)?{ ??????????????Pool[i]?=?new?FileWorker(); ??????????????Pool[i].start(); ??????????} ??????} ????????public?void?addTask(Runnable?r)?{ ??????????synchronized?(queue)?{ ??????????????queue.addLast(r); ??????????????queue.notify(); ??????????} ??????} ????????public?int?getSize()?{ ??????????return?poolSize; ??????} ????????private?class?FileWorker?extends?Thread?{ ??????????public?void?run()?{ ??????????????Runnable?task; ??????????????while?(true)?{ ??????????????????synchronized?(queue)?{ ??????????????????????while?(queue.isEmpty())?{ ??????????????????????????try?{ ??????????????????????????????queue.wait(); ??????????????????????????}?catch?(InterruptedException?e)?{ ??????????????????????????????e.printStackTrace(); ??????????????????????????} ??????????????????????} ??????????????????????task?=?(Runnable)?queue.removeFirst(); ??????????????????} ??????????????????task.run(); ??????????????} ??????????} ??????} ????}??

热点排行