gpt4 book ai didi

java - 我如何查看套接字是否已连接到我的服务器?

转载 作者:太空宇宙 更新时间:2023-11-04 11:57:18 26 4
gpt4 key购买 nike

我正在用 java 编写一个客户端/服务器应用程序。检查客户端的某些套接字是否已连接到我的服务器的代码是否正确?我很新,这是我第一个具有此特性的应用程序,所以不要杀了我......

package ServerCommunication;

import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;


public class MultiServer {

public void openSocket() throws IOException {
ServerSocket serverSocket = null;
boolean listening = true;
MultiServerThread w=null;
try {
serverSocket = new ServerSocket(1633);
System.out.println("Waiting on 1633.");
} catch (IOException e) {
System.err.println("Could not listen on port: 1633.");
System.exit(-1);
}

while (listening) {
System.out.println("Hearing");
Socket mysocket=serverSocket.accept();
if(mysocket.isConnected())
System.out.println("Already connected");
else{
System.out.println("Need to create one");
w = new MultiServerThread(mysocket);
Thread t = new Thread(w);
t.start();
}
}

serverSocket.close();
System.out.println("Multiserver closed");
}
}

最佳答案

没有。

while (listening) {
System.out.println("Hearing");
Socket mysocket=serverSocket.accept();

执行这行代码的结果是连接到客户端的 IOExceptionSocket

    if(mysocket.isConnected())

毫无意义。已连接。删除。

        System.out.println("Already connected");

当然是连接的。这就是 accept() 的用途。删除。

        else{

无法访问。删除。

            System.out.println("Need to create one");

不,你不知道。删除。

            w = new MultiServerThread(mysocket);
Thread t = new Thread(w);
t.start();

这一切都是毫无意义的。删除。

关于java - 我如何查看套接字是否已连接到我的服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41253456/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com