62,614
社区成员
发帖
与我相关
我的任务
分享
import java.io.BufferedReader;
import java.io.PrintStream;
class myWriter extends Thread {
private PipedOutputStream outStream;//将数据输出
private String messages[]={"Monday","Tuesday","Wednsday","Thursday","Friday","Saturday","Sunday"};
public myWriter(PipedOutputStream o) {
outStream=o;
}
public void run() {
PrintStream p=new PrintStream(outStream);
for(int i=0;i<messages.length;i++) {
p.println(messages[i]);
p.flush();
System.out.println("Write:" +messages[i]);
}
p.close();
p=null;
}
}
class myReader extends Thread {
private PipedInputStream inStream;//从中读取数据
public myReader(PipedInputStream i) {
inStream=i;
}
public void run() {
String line;
boolean reading=true;
BufferedReader d=new BufferedReader(new InputStreamReader(inStream));
while(reading&&d!=null){
try{
line=d.readLine();
if(line!=null) System.out.println("Read:" +line);
else reading=false;
}catch(IOException e){}
}
try{
Thread.currentThread().sleep(4000);
}catch(InterruptedException e){}
}
}
public class Pipedthread {
public static void main(String args[]) {
Pipethread thisPipe=new Pipethread();
thisPipe.process();
}
public void process() {
PipedInputStream inStream;
PipedOutputStream outStream;
try{
outStream=new PipedOutStream();
inStream=new PipedInputStream(outStream);
new myWriter(outStream).start();
new myReader(inStream).start();
}catch(IOException e) {}
}
}
package com.hyz.demo;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PipedInputStream;
import java.io.PipedOutputStream;
import java.io.PrintStream;
class myWriter extends Thread {
private PipedOutputStream outStream;//将数据输出
private String messages[]={"Monday","Tuesday","Wednsday","Thursday","Friday","Saturday","Sunday"};
public myWriter(PipedOutputStream o) {
outStream=o;
}
public void run() {
PrintStream p=new PrintStream(outStream);
for(int i=0;i<messages.length;i++) {
p.println(messages[i]);
p.flush();
System.out.println("Write:" +messages[i]);
}
p.close();
p=null;
}
}
class myReader extends Thread {
private PipedInputStream inStream;//从中读取数据
public myReader(PipedInputStream i) {
inStream=i;
}
public void run() {
String line;
boolean reading=true;
BufferedReader d=new BufferedReader(new InputStreamReader(inStream));
while(reading&&d!=null){
try{
line=d.readLine();
if(line!=null) System.out.println("Read:" +line);
else reading=false;
}catch(IOException e){}
}
try{
Thread.currentThread().sleep(4000);
}catch(InterruptedException e){}
}
}
public class Pipedthread {
public static void main(String args[]) {
Pipedthread thisPipe=new Pipedthread();
thisPipe.process();
}
public void process() {
PipedInputStream inStream;
PipedOutputStream outStream;
try{
outStream=new PipedOutputStream();
inStream=new PipedInputStream(outStream);
new myWriter(outStream).start();
new myReader(inStream).start();
}catch(IOException e) {}
}
}