小编Opi*_*eus的帖子

在C++网络中,使用select,我首先必须listen()和accept()?

我正在尝试允许多个客户端使用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)

c++ sockets networking select

7
推荐指数
1
解决办法
9049
查看次数

标签 统计

c++ ×1

networking ×1

select ×1

sockets ×1