函数accept

函数功能:

  TCP服务器依次调用socket(),bind(),listen()之后,就会监听指定的socket地址;TCP客户端在依次调用socket(),connect()之后就会向TCP服务器发送一个连接请求。TCP服务器在监听到这个请求之后,就会调用accept函数取接收请求,这样连接就建立好了。之后就可以开始网络I/O操作了,即类同于普通文件的读写I/O操作。

函数原型:

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

    sockfd:服务器的socket描述符

    addr:指向struct sockaddr的指针,用于返回客户端的协议地址

    addr:返回协议地址的长度

返回值:

  返回的是已连接的socket描述符。一个服务器通常只创建一个监听socket描述符,它在该服务器的生命周期一直存在。内核为每个由服务器进程接受的客户端连接创建了一个已连接socket描述符,当服务器完成了对某个客户的服务,相应的已连接socket描述符就被关闭。

原文地址:https://www.cnblogs.com/chen-cai/p/9159604.html