send 类
import java.io.PipedOutputStream; public class Send implements Runnable { private PipedOutputStream pos = null; public void send(){ this.pos = new PipedOutputStream(); } public void run() { String str = "Hello World"; try{ this.pos.write(str.getBytes()); }catch(Exception e){ e.printStackTrace(); } try{ this.pos.close(); }catch(Exception e){ e.printStackTrace(); } } public PipedOutputStream getPos(){ return this.pos; } }
Receive类
import java.io.IOException; import java.io.PipedInputStream; public 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; } }
demo函数
import java.io.IOException; public class PipedDemo { /** * @param args */ public static void main(String[] args) { Receive r = new Receive(); Send s = new Send(); try{ s.getPos().connect(r.getPis()); }catch(IOException e){ e.printStackTrace(); } new Thread(s).start(); new Thread(r).start(); } }