listen()函数是等待别人连接,系统进行监听请求的函数。当有人连接你的时候,你需要做两步,通过listen函数等待连接请求,然后使用accept 函数处理
int listen(int sockfd, int backlog);
sockfd : 是一个套接字描述符,由socket()系统调用获得。
backlog : 是未经处理的连接请求可以容纳的最大的数目,每一个连接请求都要进入一个请求队列,等待listen的程序来调用accept函数来接手这个连接。当系统还没有
调用accept()函数的时候,如果有很多连接,那么本地能够等待的最大数目的连接数,就是backlog的数值。
返回值 : -1说明在listen()函数执行过程中发生了错误。全局变量 errno 中存储了错误代码。
如果你想要一个端口上接受外来请求的话,那么函数的调用顺序为 :
socket();
bind();
listen();
accept();