多線程的服務器程序 線程中等待客戶端的消息
我的代碼能實現服務器與客戶端的通信
問題是: 當客戶端中斷或退出 以上代碼卻不能判斷Socket中斷 跳不出while的無限循環
解決方法:
1. while(Binput.read()!= -1) 這種方法 能判斷出客戶端輸入是否為空 客戶端斷開 能跳出死循環
2. 用下面的方法就沒問題了 在死循環中加入以下代碼
try {
socket.sendUrgentData(0);
} catch (IOException e) {
done= false; //如果拋出了異常,那么就是斷開連接了 跳出無限循環
}