package day04;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.PrintWriter;
import java.util.LinkedList;
import java.util.Scanner;
public class UnSyncDemo {
public static void main(String[] args) throws FileNotFoundException {
// test();
testUnsync();
}
private static void testUnsync() throws FileNotFoundException {
// TODO Auto-generated method stub
final LinkedList<String> lists=new LinkedList<String>();
@SuppressWarnings("resource")
final PrintWriter pw=new PrintWriter(new File("./abc1.txt"));
final Thread read=new Thread(){
public void run(){
while(true){
if(lists.size()==0){
System.out.println("请输入数据:");
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
System.out.println("写入完毕!");
break;
}
continue;
}
String str=lists.removeLast();
pw.println(str);
pw.flush();
}
}
};
Thread write =new Thread(){
public void run(){
@SuppressWarnings("resource")
Scanner s=new Scanner(System.in);
while(true){
String str=s.nextLine();
if(str.equals("quit")){
read.interrupt();
break;
}
lists.addFirst(str);
}
}
};
write.setDaemon(true);
read.start();
write.start();
}
@SuppressWarnings("unused")
private static void test() throws FileNotFoundException {
// TODO Auto-generated method stub
PrintWriter pw=new PrintWriter(
new FileOutputStream("./sync.txt"));
@SuppressWarnings("resource")
Scanner s=new Scanner(System.in);
while(true){
String str=s.nextLine();
if(str.equals("quit")){
System.out.println("写入结束!");
break;
}
pw.println(str);
}
pw.flush();
pw.close();
}
}