gpt4 book ai didi

java - 套接字只接受一个客户端

转载 作者:可可西里 更新时间:2023-11-01 02:49:34 26 4
gpt4 key购买 nike

我已经在 java 中创建了一个接受客户端连接的服务器。但是我只能连接一个客户端

class Server extends Thread{

private void startServer() {

try{
ss=new ServerSocket(3000);
s=ss.accept();
DataRead d1=new DataRead();
d1.t.start();



}catch(Exception er){
er.printStackTrace();
}
}
}

最佳答案

你只能接受一个套接字。在您的 jButton1ActionPerformed

s=ss.accept();

但是当您单击 jButton1 按钮时,它只会被调用一次。如果你想让多个客户端能够连接,你需要继续调用 accept()

此外,请记住,每次调用 accept() 都会阻塞,直到客户端连接,然后返回一个代表该连接的套接字。所以如果你想支持多个客户端,你不应该把你的 Socket 作为一个全局变量,它应该包含在你的 DataRead 类的构造函数中,所以每个阅读器在唯一的套接字/连接/客户端上运行。

关于java - 套接字只接受一个客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11010348/

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