我正在尝试允许多个客户端使用select连接到主机.我是否必须连接每一个,告诉他们移动到另一个端口,然后重新连接新端口?或者会选择允许我将多个客户端连接到同一个端口?
这是客户端代码:
int rv;
int sockfd, numbytes;
if ((rv = getaddrinfo(hostName, hostPort, &hints, &servinfo)) != 0) {
cout << "Could not get server address.\n";
exit(1);
}
// loop through all the results and connect to the first we can
for(p = servinfo; p != NULL; p = p->ai_next) {
if ((sockfd = socket(p->ai_family, p->ai_socktype, p->ai_protocol)) == -1) {
perror("Client: no socket");
continue;
}
if (connect(sockfd, p->ai_addr, p->ai_addrlen) == -1) {
close(sockfd);
perror("Client: connect");
continue;
}
break;
}
if (p == …Run Code Online (Sandbox Code Playgroud)