socket 基础问题
package test;
import java.io.*;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.*;
public class test {
public static void main(String[] args) {
try {
ServerSocket server=new ServerSocket(1991);
Socket soc=server.accept();
DataOutputStream output=new DataOutputStream(soc.getOutputStream());
output.write( "hello ".getBytes());
BufferedReader reader=new BufferedReader(new InputStreamReader(soc.getInputStream()));
String in=null;
while((in=reader.readLine())!=null)
{
System.out.println(in);
}
}catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
}
问题在这里:
while((in=reader.readLine())!=null)
{
System.out.println(in);
}
我不明白它为什么会一直循环等待输入。 如果我不输入。那in 不就是null了么 。。
谢谢回答!
------解决方案--------------------阻塞IO