import java.io.*;
class Send implements Runnable
{
private PipedOutputStream pos=null;
public Send(){
this.pos=new PipedOutputStream();
}
public void run(){
String str="Hello world";
try{
this.pos.write(str.getBytes());
}catch(IOException e){
e.printStackTrace();
}
}
public PipedOutputStream getpos(){
return this.pos;
}
}
class Receive implements Runnable
{
private PipedInputStream pis=null;
public Receive(){
this.pis=new PipedInputStream();
}
public void run()
{
byte b[]=new byte[1024];
int len=0;
try{
len=this.pis.read(b);
}catch(IOException e){
e.printStackTrace();
}
try{
this.pis.close();
}catch(IOException e){
e.printStackTrace();
}
System.out.println("接受的内容为:"+new String(b,0,len));
}
public PipedInputStream getpis(){
return this.pis;
}
}
public class PipedDemo
{
public static void main(String[] args)
{
Send s=new Send();
Receive r=new Receive();
try{
s.getpos().connect(r.getpis());
}catch(IOException e){
e.printStackTrace();
}
new Thread(s).start(); //启动线程
new Thread(r).start(); //启动线程
}
}