UDP线程模拟可以实现,为何TCP不行?
运行报出链接异常
package sendandreceive;
import java.io.*;
import java.net.*;
class Client implements Runnable{
private Socket s;
Client(Socket s){
this.s=s;
}
public void run() {
try {
BufferedReader br=new BufferedReader(
new InputStreamReader(System.in));
PrintWriter pw=new PrintWriter(s.getOutputStream(),true);
String line=null;
while((line=br.readLine())!=null) {
if("over".equals(line)) {
break;
}
pw.println(line);
}
br.close();
s.close();
}catch(Exception e) {
e.printStackTrace();
}
}
}
class Server implements Runnable{
private ServerSocket ss;
Server(ServerSocket ss){
this.ss=ss;
}
public void run() {
try {
Socket s=ss.accept();
BufferedReader br=new BufferedReader(
new InputStreamReader(s.getInputStream()));
//PrintWriter pr=new PrintWriter(new FileWriter(""),true);
String line=null;
while((line=br.readLine())!=null) {
System.out.println(line);
}
s.close();
ss.close();
}catch(Exception e) {
e.printStackTrace();
}
}
}
public class TCP {
public static void main(String[] args) throws Exception {
Socket s =new Socket("x",10000);
ServerSocket ss=new ServerSocket(10000);
new Thread(new Client(s)).start();
new Thread(new Server(ss)).start();
}
}