jdk1.4 构建 java多线程,并发设计框架 使用列子(二)
来源:互联网 发布:php获取cookie值 编辑:程序博客网 时间:2024/05/16 17:50
把读取的数据流,获取数据流后,
1启动一个子线程,读取数据,把数据放入缓冲多线程并发队列
2把数据交给处理流数据对象,使得读取数据与处理数据分离
- import java.io.*;
- import java.net.Socket;
- import java.net.InetSocketAddress;
- import java.nio.ByteBuffer;
- /**
- * 获取相关数据流.
- * 把读取的数据流,发送给处理数据流的对象ProcessRequestData.
- * @author guishuanglin 2008-11-3
- *
- */
- public class ProcessRequest implements Runnable {
- //ByteArrayOutputStream
- private ConcurrentQueue cQueue;
- private Socket socket;
- private Class clientClass;
- private int requestCount;
- private int cacheByte = 1024;
- /**
- * @param ss
- * @param requestNum
- */
- public ProcessRequest(Socket st, int requestCount,int cacheByte,Class clientClass) {
- socket = st;
- this.requestCount= requestCount;
- this.clientClass = clientClass;
- this.cacheByte = cacheByte;
- CreateCacheQueue();
- }
- public void run() {
- //启动一个子线程,读取数据,把数据放入缓冲队列
- new Thread(new ProcessRequestStream(socket,requestCount,cacheByte,cQueue)).start();
- // 获取数据流后,把数据交给处理流数据对象,使得读取数据与处理数据分离.
- String s = socket.getInetAddress().getHostAddress();
- new Thread(new ProcessRequestData(requestCount,s,clientClass,cQueue)).start();
- //
- ReleaseResource();
- }
- /**
- * 创建客户数据缓冲队
- * @date 2008-11-3
- */
- public void CreateCacheQueue(){
- this.cQueue = new ConcurrentQueue(1024,String.valueOf(requestCount));
- }
- public void ReleaseResource() {
- socket=null;
- clientClass=null;
- cQueue = null;
- }
- }
- jdk1.4 构建 java多线程,并发设计框架 使用列子(二)
- jdk1.4 构建 java多线程,并发设计框架 使用列子(一)
- jdk1.4 构建 java多线程,并发设计框架 使用列子(三)
- jdk1.4 构建 java多线程,并发设计框架 使用列子(四)
- jdk1.4 构建 java多线程,并发设计框架 使用列子(五)
- jdk1.4 构建 java多线程,并发设计框架 使用列子(六)
- jdk1.4 构建 java多线程,并发设计框架 (二)
- jdk1.4 构建 java多线程,并发设计框架 (三)
- jdk1.4 构建 java多线程,并发设计框架 (四)
- jdk1.4 构建 java多线程,并发设计框架 (五)
- jdk1.4 构建 java多线程设计框架 (一)
- 多线程开发的捷径:构建Java并发模型框架
- 多线程开发的捷径:构建Java并发模型框架
- (二) java并发编程--为什么使用多线程
- 构建Java并发模型框架
- 构建Java并发模型框架
- 构建Java并发模型框架
- 构建Java并发模型框架
- C#中的类型转换
- android 调用Webkit工具
- jdk1.4 构建 java多线程,并发设计框架 使用列子(三)
- 告诉大家一个自救救人的古代偏方
- [批处理应用]新入域的计算机枚举,显示加域人员
- jdk1.4 构建 java多线程,并发设计框架 使用列子(二)
- java时间操作函数汇总
- c++与java的区别与联系
- jdk1.4 构建 java多线程,并发设计框架 使用列子(四)
- 采用GTK进行简单聊天程序客户端的编写,使用C语言。
- jdk1.4 构建 java多线程,并发设计框架 使用列子(五)
- 去掉QQ迷你新闻的方法
- The Open Source Development Environment for .NET
- jdk1.4 构建 java多线程,并发设计框架 使用列子(六)