首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

socket 基础有关问题

2012-01-07 
socket 基础问题packagetestimportjava.io.*importjava.net.ServerSocketimportjava.net.Socketimport

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

热点排行