**管道---过滤器*
来源:互联网 发布:魅族有哪些网络授权店 编辑:程序博客网 时间:2024/04/27 22:40
管道—过滤器管道-过滤器的详细解说及其内容分析
NumFilter1 import java.io. *;public class NumFilter1 extends Thread { PipedWriter piped_writer; public NumFilter1(PipedWriter pw) { piped_writer = pw; } public void run() { try { for (int j = 1; j<100; j++){ synchronized(this){ piped_writer.write(j ) ; System.out.println(" " ); System.out.println("Filter 1 writing = " + j+"\n" ); Thread.sleep(1000); } } piped_writer.write(-1) ; } catch(Exception e) { } }}
/***************************************************************************/
NumFilter2
import java.io. *;public class NumFilter2 extends Thread { PipedReader piped_reader; PipedWriter piped_writer; public NumFilter2(PipedReader pr, PipedWriter pw) { piped_reader = pr; piped_writer = pw; } public void run() { try { while (true) { synchronized(this){ int c = piped_reader.read(); if ( c != -1){ System.out.println(" " ); System.out.println("Filter 2 reading = " + c ); int m = c+100; piped_writer.write(m); System.out.println("Filter 2 writing = " + m +"\n"); Thread.sleep(1000); } else return; }//sync } } catch(Exception e) {} }}`/*********************************************************************************8/
import java.io. *;
public class NumFilter3 extends Thread {
PipedReader piped_reader;
PipedWriter piped_writer;
public NumFilter3(PipedReader pr, PipedWriter pw) { piped_reader = pr; piped_writer = pw;}public void run() { try { while (true) { synchronized(this){ int c = piped_reader.read(); if ( c != -1){ System.out.println(" " ); System.out.println("Filter 3 reading = " + c ); int m = c+200; piped_writer.write(m); System.out.println("Filter 3 writing = " + m+"\n" ); Thread.sleep(1000); } else return; }//sync } } catch(Exception e) {}}
}
/***************************************************************************/
import java.io. *;public class NumFilter4 extends Thread { PipedReader piped_reader; public NumFilter4(PipedReader pr) { piped_reader = pr; } public void run() { try { while (true) { synchronized(this){ int c = piped_reader.read(); if ( c != -1){ System.out.println(" " ); System.out.println("Filter 4 reading = " + c ); int m = c+300; Thread.sleep(1000); } else return; }//sync } } catch(Exception e) {} }}`/********************************************************************/
import java.io. *;public class TestFilter { public static void main(String[] args) { PipedWriter pipe1_leftEnd = new PipedWriter(); PipedReader pipe1_rightEnd = null; PipedWriter pipe2_leftEnd = new PipedWriter(); PipedReader pipe2_rightEnd = null; PipedWriter pipe3_leftEnd = new PipedWriter(); PipedReader pipe3_rightEnd = null; try{ pipe1_rightEnd = new PipedReader(pipe1_leftEnd); pipe2_rightEnd = new PipedReader(pipe2_leftEnd); pipe3_rightEnd = new PipedReader(pipe3_leftEnd); } catch(IOException io){ } //create filter objects NumFilter1 f1 = new NumFilter1(pipe1_leftEnd ); NumFilter2 f2 = new NumFilter2(pipe1_rightEnd, pipe2_leftEnd); NumFilter3 f3 = new NumFilter3(pipe2_rightEnd, pipe3_leftEnd); NumFilter4 f4 = new NumFilter4(pipe3_rightEnd); f1.start(); f2.start(); f3.start(); f4.start(); }}
“`
/*********************************************************************************88/
0 0
- 管道过滤器
- **管道---过滤器*
- 过滤器 输入输出 管道
- 管道和过滤器
- Linux管道和过滤器
- 批处理与管道-过滤器
- Linux管道和过滤器
- Linux管道和过滤器
- KWIC:管道-过滤器模式.
- 管道-过滤器软件架构
- 全自动过滤器:全自动管道过滤器工作原理
- Shell 管道线 和 过滤器
- 管道--过滤器之千年虫问题
- 体系结构—管道-过滤器风格
- 关于Linux-管道和过滤器
- 管道过滤器(Pipe-And-Filter)模式
- 管道过滤器的实现---java语言
- [笔记]软件体系结构(3)--管道与过滤器
- 第9周项目3-稀疏矩阵的三元组表示的实现及应用(2)
- android国际化的小总结
- 第九周项目4-广义表算法库及应用(2)
- (003) Andriod中的常用布局
- C++11资源管理新方法ON_SCOPE_EXIT
- **管道---过滤器*
- 特征工程分析
- Hard 65题 Valid Number
- Git 安装使用详解
- K个不同字符的最长子串
- 12G voxforge1语音数据源 下载脚本
- 世界十大极限运动是什么
- .NET Framework Client Profile 导致的引用失效
- Shape属性详解