体系结构—管道-过滤器风格

来源:互联网 发布:香港验血 知乎 编辑:程序博客网 时间:2024/04/28 09:43
import java.io.IOException;import java.nio.ByteBuffer;import java.nio.channels.Pipe;public class Fp {public static void main(String[] args) throws IOException {Pipe lyy_pipe = Pipe.open();final Pipe.SinkChannel lyy_psic = lyy_pipe.sink();final Pipe.SourceChannel lyy_psoc = lyy_pipe.source();Thread tPwriter = new Thread() {public void run() {    try {     // 创建一个线程,利用管道的写入口Pipe.SinkChannel类型的psic往管道里写入指定ByteBuffer的内容lyy_psic.write(ByteBuffer.wrap("Hello,Pipe!".getBytes("utf-16BE")));    }     catch (IOException e) {      e.printStackTrace();     }   }    };Thread tPreader = new Thread() {public void run() {int lyy_bbufferSize = 1024 * 2;    ByteBuffer lyy_bbuffer = ByteBuffer.allocate(lyy_bbufferSize);    try {     // 创建一个线程,利用管道的读入口Pipe.SourceChannel类型的psoc将管道里内容读到指定的ByteBuffer中    lyy_psoc.read(lyy_bbuffer);         lyy_bbuffer.rewind();        System.out.println("Content:" + lyy_bbuffer.asCharBuffer());    }     catch (IOException e) {    e.printStackTrace();     }     }      };tPwriter.start();    tPreader.start();}  }

运行结果:

0 0
原创粉丝点击