listen
c语言函数
listen在套接字函数中表示让一个套接字处于监听到来的连接请求的状态
头文件
linux:
函数声明
linux
int listen(int fd, int backlog);
windows
int listen(SOCKET sockfd, int backlog);
功能
listen函数使用主动连接套接字变为被连接套接口,使得一个进程可以接受其它进程的请求,从而成为一个服务器进程。在TCP服务器编程中listen函数把进程变为一个服务器,并指定相应的套接字变为被动连接。
listen函数一般在调用bind之后-调用accept之前调用。
参数
sockfd 一个已绑定未被连接的套接字描述符
backlog 连接请求队列(queue of pending connections)
的最大长度(一般由2到4)。用SOMAXCONN则为系统给出的最大值
返回值
无错误,返回0,
否则,返回SOCKET ERROR,windows上可以调用函数WSAGetLastError取得错误代码,在Linux可使用errno
说明
(1) 执行listen 之后套接字进入被动模式。
(2) 队列满了以后,将拒绝新的连接请求。客户端将出现连接D 错误WSAECONNREFUSED。
(3) 在正在listen的套接字上执行listen不起作用。
例子
参考资料
最新修订时间:2023-02-20 14:25
目录
概述
头文件
函数声明
功能
参考资料