我需要构建一个应用程序服务器模块-一个用于在原则上聊天的通信客户端的控制台应用程序,该客户端模块-一个必须连接到服务器的GUI应用程序聊天。
问题是我需要对连接的用户数设置限制,服务器启动时会读取配置文件中的限制
最佳答案
为什么不将条件放入while循环中?
try {
int numOfConnectionLimit = 10; // or read number of connection from that config file
ServerSocket listenerServ = new ServerSocket(servPort);
System.out.println("Waiting...." + servPort + " "
+ "" + listenerServ.getInetAddress().getHostAddress());
while (connectArray.size() < numOfConnectionLimit) {
sock = listenerServ.accept();
connectArray.add(sock);
System.out.println("Client connected from: " + sock.getLocalAddress().getHostName());
addUserName(sock);
SocketChatServerReturn chat = new SocketChatServerReturn(sock);
Thread X = new Thread(chat);
X.start();
}
} catch (Exception exSock) {
System.out.println("IOException on socket listen: " + exSock);
exSock.printStackTrace();
}
}