readLine()取不出数据的问题
BufferedReader br = null;
PrintStream pw = null;
private Socket s = null;
InputStreamReader isr;
private GetMessage getMessage;
s = new Socket(host,8000);
isr = new InputStreamReader(s.getInputStream());
br = new BufferedReader(isr);//输入流
pw = new PrintStream(s.getOutputStream());//输出流
GetMessage g = new GetMessage();//
st = new Thread(g);
st.start();
class GetMessage extends Thread{
public void run(){
String line = null;
while(true){
ta.append("600\n");
try{
if((line = br.readLine())!= null){//为什么运行到这里程序就停止了,一直在等待,只有socket关闭了,才会继续运行。这是什么原因?
ta.append("接收到信息:"+line+"\n");
}
else{
ta.append("超时");
}
}catch(Exception e){
}
try{
sleep(600);
}catch(Exception e){
}
}
}
}
if((line = br.readLine())!= null){//为什么运行到这里程序就停止了,一直在等待,只有socket关闭了,才会继续运行。这是什么原因?数据能发出去,同时服务器也确实返回数据了,为什么这里会停止,请达人指教。