accept() 方法

accept() 方法是在网络编程中使用的一个系统调用,用于接受来自客户端的连接请求,创建一个新的套接字并返回与客户端进行通信的套接字文件描述符。

accept() 方法的原型如下:

#include <sys/types.h>
#include <sys/socket.h>

int accept(int sockfd, struct sockaddr *addr, socklen_t *addrlen);

其中,sockfd 参数是调用 socket() 函数创建的监听套接字文件描述符。addr 参数是一个指向结构体的指针,用于存储客户端的地址信息。addrlen 参数是一个指向 socklen_t 类型的指针,用于存储 addr 结构体的大小。

accept() 方法返回一个非负整数,表示新创建的与客户端通信的套接字文件描述符。如果返回值为 -1,则表示接受连接请求失败,此时可以通过 errno 变量获取错误码。

在使用 accept() 方法接受连接请求时,通常需要先调用 bind() 方法将套接字绑定到一个本地地址上,然后调用 listen() 方法开始监听连接请求。当有客户端请求连接时,accept() 方法将返回一个新的套接字文件描述符,可以使用这个套接字与客户端进行通信。

参考: https://linux.die.net/man/2/accept

powered by Gitbook© 2023 编外计划 | 最后修改: 2023-11-24 03:36:58

results matching ""

    No results matching ""