java多线程中的死循环

public void run(){ try{ ServerSocket ss=new ServerSocket(2000); while(true){ Socket so=ss.accept(); new ServerThread(so).start(); } }catch(Exception ee){ ee.printStackTrace(); } 大家帮我看一下这段代码为什么我把这段代码写进线程里面了ss.accept();虽然死循环了但是下面的代码还是可以执行.我试过不写进线程随便写进一个方法的话就会死循环下去了

ss.accept();方法在没有客户端连接时会进入阻塞状态,所以循环到这步时代码就不再执行了等待客户端连接,所以不会死循环.普通的方法,肯定会循环执行到死...
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-12-09
用的是ServerSocket是服务器端的socket不停监听用户连接的请求 !!!当然要这样循环啦
第2个回答  2011-12-13
你确定是继承了THread,你把ServerSocket标注到全局变量试试,就是标注到类名下面
相似回答
大家正在搜