如何检查Socket
是否连接到客户端?
public void run() {
while (true) {
try {
if (socket.isConnected()) {
System.out.println("is actuaally conecting");
input = new ObjectInputStream(socket.getInputStream());
Message messagePing = (Message) input.readObject();
if (messagePing.getMessage().equals("ping") &&
messagePing.getAuthor().equals(name)) {
localOutput = new ObjectOutputStream(socket.getOutputStream());
localOutput.writeObject(new Message(CONFIG, "pong"));
Message message = (Message) input.readObject();
if (message.getHeader().equals(USERMESSAGE)) {
if (usersBase.getUser(message.getRecipient())!= null) {
output = new ObjectOutputStream(socket.getOutputStream());
output = new ObjectOutputStream(usersBase.getUser(
message.getRecipient()).getSocket().getOutputStream());
output.writeObject(message);
} else { System.out.println("user is null"); }
}
}
}
} catch (IOException | ClassNotFoundException e) {
e.printStackTrace();
}
}
}
socket.isConnected()
不起作用。当套接字连接到客户端时,我想运行以上代码(代码来自聊天服务器)。感谢所有帮助。