我最近在 java 中編寫了一個(gè)套接字通信程序,其中兩個(gè)線程在每個(gè)服務(wù)器和客戶端并發(fā)運(yùn)行,處理對(duì)套接字的讀寫操作,允許雙方連續(xù)發(fā)送和接收消息。問題是客戶端或服務(wù)器停止接收來自另一端的通信,然后一段時(shí)間后它們都停止工作。我不知道出了什么問題以及連接如何斷開:/服務(wù)器代碼 import java.net.*; import java.io.*; import java.util.Scanner; public class Server { private Socket socket = null; private ServerSocket server = null; private DataInputStream in = null; private DataOutputStream out = null;private Scanner inp = null;String line = "";String iline = ""; public Server(int port) { try { server = new ServerSocket(port); System.out.println("Server started"); System.out.println("Waiting for a client ..."); socket = server.accept(); System.out.println("Client accepted"); // takes input from the client socket out=new DataOutputStream(socket.getOutputStream()); in = new DataInputStream(new BufferedInputStream(socket.getInputStream())); inp = new Scanner(System.in); while (true) { new Thread(new Runnable(){ public void run() { try{ while(true){ line = in.readUTF(); System.out.println("Client : "+line); if(socket.isClosed()||socket.isOutputShutdown()||socket.isInputShutdown()) { System.out.println("DED"); System.exit(0); } } } catch(Exception e){ System.out.println("Exception !!!"); } } })
Java 客戶端服務(wù)器聊天應(yīng)用程序失去連接
慕田峪4524236
2021-11-11 18:05:54