一 概述:
1.功能:
*accept函数由TCP服务器调用,用于从已完成连接队列队头返回一个已完成连接。如果已完成队列为空,那么进程被投入睡眠(假定套接字为阻塞方式)。
2.格式:int accept(int listenfd,struct sockaddr *cliaddr,socklen_t *addrlen)。
*listenfd:监听套接字。
*cliaddr:返回客户进程的协议地址。如果不需要,把cliaddr和addlen指针都置为空。
*addrlen:返回客户进程协议地址的长度。
3.accept返回值:
*调用成功,返回一个已连接套接字描述符。
*客户进程的协议地址和长度。
4.注意区分两个套接字:
*一个服务器通常仅仅建立一个监听套接字,它在该服务器的生命期内一直存在。
*内核为每个由服务器进程接受的客户连接创建一个已连接套接字,当服务器完成对某个给定客户的服务时,相应的已连接套接字被关闭。