来至《java多线程设计模式》

类似ThreadPool,预先产生几个worker线程准备工作。

  public void startWorkers() {for (int i = 0; i < threadPool.length; i++) {threadPool[i].start();}}
package Sample;public class WorkerThread extends Thread {private final Channel channel;public WorkerThread(String name, Channel channel) {super(name);this.channel = channel;}public void run() {while (true) {}}
}
public synchronized void putRequest(Request request) {while (count >= requestQueue.length) {try {wait();} catch (InterruptedException e) {}}requestQueue[tail] = request;tail = (tail + 1) % requestQueue.length;count++;notifyAll();}public synchronized Request takeRequest() {while (count <= 0) {try {wait();} catch (InterruptedException e) {}}Request request = requestQueue[head];head = (head + 1) % requestQueue.length;count--;notifyAll();return request;}

转载于:https://www.cnblogs.com/cxccbv/archive/2009/05/08/1452954.html

模式8--WorkerThread相关推荐

  1. python电梯题_OO——电梯作业总结

    电梯作业总结 程序结构与复杂度的分析 第一次作业 1.设计思路 第一次作业是电梯作业的第一次,也是我多线程变成的第一次实践.任务是编写一个多线程实时电梯系统,采用FAFS的调度方式.由于第一次作业中没 ...

  2. 设计模式调优-性能设计沉思录(10)

    JAVA调优系列文章 JVM调优全面探讨-性能设计沉思录(1)_luozhonghua2000的博客-CSDN博客 JVM GC回收和内存分配优化-性能设计沉思录(2)_luozhonghua2000 ...

  3. 大淘宝服务端技术干货沉淀和总结

    网络基础 TCP三次握手 三次握手过程 客户端--发送带有SYN标志的数据包--服务端 一次握手 Client进入syn_sent状态 服务端--发送带有SYN/ACK标志的数据包--客户端 二次握手 ...

  4. python 各种模块学习

    from:https://blog.csdn.net/weiwangchao_/article/details/70570508 转载:.... Python的模块大全,很全,有详细介绍! 另外附Py ...

  5. Java多线程设计模式(4)线程池模式

    前序: Thread-Per-Message Pattern,是一种对于每个命令或请求,都分配一个线程,由这个线程执行工作.它将"委托消息的一端"和"执行消息的一端&qu ...

  6. 深入理解Spark 2.1 Core (六):Standalone模式运行的原理与源码分析

    我们讲到了如何启动Master和Worker,还讲到了如何回收资源.但是,我们没有将AppClient是如何启动的,其实它们的启动也涉及到了资源是如何调度的.这篇博文,我们就来讲一下AppClient ...

  7. reactor模式:多线程的reactor模式

    上文说到单线程的reactor模式 reactor模式:单线程的reactor模式 单线程的reactor模式并没有解决IO和CPU处理速度不匹配问题,所以多线程的reactor模式引入线程池的概念, ...

  8. java workthread_Java多线程基础(十)——Work Thread模式

    一.定义 Work Thread模式和Thread-Per-Message模式类似,Thread-Per-Message每次都创建一个新的线程处理请求,而Work Thread模式预先会创建一个线程池 ...

  9. 多线程编程模式之Single Threaded Execution 模式

    一.Single Threaded Execution 模式介绍 简单的来说,Single threaded execution 模式描述了在一种多线程环境下各个线程对于公用资源的使用方式--任一时刻 ...

  10. 多线程设计模式-线程池模式

    定义: 使用极其有限的资源(线程池)去处理相对无限的任务 线程池模式UML图 ThreadPool: 负责接收和存储任务以及工作者线程的生命周期管理     submit: 用于接收一个任务,客户端代 ...

最新文章

  1. Oracle自增列创建方法
  2. 前端资源系列(2)-SublimeText快捷键大全
  3. Java凝视Override、Deprecated、SuppressWarnings具体解释
  4. php怎么写获取手机剪切板到搜索栏,如何根据指定的剪切板获取html?
  5. java s0 s1_业余草告诉你Java GC 变量含义(S0 S1 E O P YGC YGCT FGC FGCT G
  6. 《About Multi-Touch(多点触摸是个什么东西?)》:基于光学原理的多点触摸技术全解析...
  7. 李浩:无限节点的CDN架构演进
  8. 深入理解MFC消息循环和消息泵的原理
  9. 在struts2中配置自定义拦截器放行多个方法
  10. web前端之html从入门到精通
  11. python numpy中对ndarry按照index(位置下标)增删改查
  12. “你的深度学习框架包含15个漏洞”,360说 | 附论文
  13. HBase实战 | 从MySQL到HBase:数据存储方案转型的演进
  14. android andbase,andbase
  15. c语言实验报告问题错误分析,C语言实验报告
  16. 【MATLAB】求极限
  17. DDD领域驱动设计:四层架构应用
  18. 汽车销售数据相关性分析
  19. 科技“蝶变”,两轮电动车下一个五年的“新动力”
  20. css如何修改滚动条样式

热门文章

  1. c malloc 头文件_干货笔记 | C/C++笔试面试详细总结(二)
  2. arcgis分隔图层重复出文件_已知坐标点txt文件在ArcGIS中转换成shp数据的两种方法...
  3. java 通过IText生成PDF时顺序问题(图片)
  4. 【IT笔试面试题整理】判断一个树是否是另一个的子树
  5. FLASH ERASE:CHIP、BLOCK、SECTOR
  6. 【人脸对齐-Landmarks】人脸关键点检测方法及评测汇总
  7. strace命令用法
  8. 深度学习与计算机视觉(三)最优化与梯度下降
  9. 女孩子应该养成的好习惯
  10. 安卓设置Activity切换动画无效的问题