0
我試圖建立一個聊天室類型的場景,其中服務器將持續監聽來自客戶端的任何數據包,同時能夠檢測服務器是否鍵入任何東西發送到客戶端Java服務器監聽客戶端並同時接收用戶輸入併發送到客戶端
這是我迄今爲止所做的,但我不能想到正確的方式來做到這一點,因爲現在我的代碼會卡住等待在的readLine()
for(;;){
String input=null;
input = inFromUser.readLine();
if (input.equals("exit")){
break;
}else if (!input.equals(null)){
byte[] newText = input.getBytes();
sendPacket = new DatagramPacket(newText, newText.length, IPAddress, 9876);
serverSocket.send(sendPacket);
System.out.println("TO CLIENT(BOB): "+ new String(newText));
}else{
receivePacket = new DatagramPacket(receiveData, receiveData.length);
serverSocket.receive(receivePacket);
realSentence = Arrays.copyOf(receivePacket.getData(), receivePacket.getLength());
String fromHost = new String(realSentence);
System.out.println("FROM CLIENT(BOB): " + fromHost);
}
}
所以我想知道的輸入反正是有監聽數據報,並同時能夠以文字閱讀上鍵入終端併發送給客戶端
除了多線程之外,還有其他方法嗎? – user1958567