LISTEN 2
目录
- NAME 名称 listen
- SYNOPSIS 概述
.B #include
.sp .BI - DESCRIPTION 描述 在接收连接之前,首先要使用 .BR socket (2) 创建一个套接字,然后调用 .BR listen 使其能够自动接收到来的连接并且为连接队列指定一个长度限制. 之后就可以使用 .BR accept (2) 接收连接. .B listen 调用仅适用于 .B SOCK_STREAM 或者 .BR SOCK_SEQPACKET 类型的套接字. .PP 参数 .I backlog 指定未完成连接队列的最大长度.如果一个连接请求到达时未完成连接 队列已满,那么客户端将接收到错误 .B ECONNREFUSED. 或者,如果下层协议支持重发,那么这个连接请求将被忽略,这样客户端 在重试的时候就有成功的机会. .SH NOTES 注意 在TCP套接字中 .I backlog 的含义在Linux 2.2中已经改变. 它指定了已经完成连接正等待应用程序接收的套接字队列的长度,而不是 未完成连接的数目.未完成连接套接字队列的最大长度可以使用 .B tcp_max_syn_backlog sysctl设置 当打开syncookies时不存在逻辑上的最大长度,此设置将被忽略.参见 .BR tcp (7) 以获取更多信息. .SH
- ERRORS 错误 .TP .B EBADF 参数 .I s 不是合法的描述符. .TP .B ENOTSOCK 参数 .I s 不是一个套接字. .TP .B EOPNOTSUPP 套接字类型不支持 .B listen 操作. .SH
- BUGS 勘误 如果套接字类型是 .BR AF_INET , 并且参数 .I backlog 大于常量 .B SOMAXCONN (Linux 2.0&2.2中是128),它将被自动截断为 .BR SOMAXCONN 的值. 有的BSD系统(以及一些BSD扩展)将backlog值限制为5. .SH
- [中文版维护人]
- [中文版最新更新]
- 《中国linux论坛man手册页翻译计划》:
- 跋
LISTEN
NAME åç§°SYNOPSIS æ¦è¿°
DESCRIPTION æè¿°
NOTES 注æ
RETURN VALUE è¿åå¼
ERRORS é误
CONFORMING TO å¼å®¹äº
BUGS å误
SEE ALSO åè§
[䏿çç»´æ¤äºº]
[ä¸æçææ°æ´æ°]
ãä¸å½linux论åmanæå页翻è¯è®¡åã:
è·
NAME åç§°
listen - listen for connections on a socket å¨ä¸ä¸ªå¥æ¥åä¸å¾å¬è¿æ¥
SYNOPSIS æ¦è¿°
#include <sys/socket.h>
int listen(int s, int backlog);
DESCRIPTION æè¿°
卿¥æ¶è¿æ¥ä¹å,é¦åè¦ä½¿ç¨ socket(2) å建ä¸ä¸ªå¥æ¥å,ç¶åè°ç¨ listen 使å¶è½å¤èªå¨æ¥æ¶å°æ¥çè¿æ¥å¹¶ä¸ä¸ºè¿æ¥éåæå®ä¸ä¸ªé¿åº¦éå¶. ä¹åå°±å¯ä»¥ä½¿ç¨ accept(2) æ¥æ¶è¿æ¥. listen è°ç¨ä»éç¨äº SOCK_STREAM æè SOCK_SEQPACKET ç±»åç奿¥å.
åæ° backlog æå®æªå®æè¿æ¥éåçæå¤§é¿åº¦.妿ä¸ä¸ªè¿æ¥è¯·æ±å°è¾¾æ¶æªå®æè¿æ¥ éå已满,é£ä¹å®¢æ·ç«¯å°æ¥æ¶å°é误 ECONNREFUSED. æè,妿ä¸å±åè®®æ¯æéå,é£ä¹è¿ä¸ªè¿æ¥è¯·æ±å°è¢«å¿½ç¥,è¿æ ·å®¢æ·ç«¯ å¨éè¯çæ¶åå°±ææåçæºä¼.
NOTES 注æ
å¨TCP奿¥åä¸ backlog çå«ä¹å¨Linux 2.2ä¸å·²ç»æ¹å. 宿å®äºå·²ç»å®æè¿æ¥æ- £çå¾åºç¨ç¨åºæ¥æ¶ç奿¥åéåçé¿åº¦,è䏿¯ æªå®æè¿æ¥çæ°ç®.æªå®æè¿æ¥å¥æ¥å- éåçæå¤§é¿åº¦å¯ä»¥ä½¿ç¨ tcp_max_syn_backlog sysctl设置 彿å¼syncookiesæ¶ä¸åå¨é»è¾ä¸çæå¤§é¿åº¦,æ¤è®¾ç½®å°è¢«å¿½ç¥.åè§ tcp(7) 以è·åæ´å¤ä¿¡æ¯.
RETURN VALUE è¿åå¼
彿°æ§è¡æåæ¶è¿å0.é误æ¶è¿å-1,å¹¶ç½®ç¸åºé误代ç . errno
ERRORS é误
|
EBADF |
åæ° s 䏿¯åæ³çæè¿°ç¬¦. |
ENOTSOCK
åæ° s 䏿¯ä¸ä¸ªå¥æ¥å.
EOPNOTSUPP
奿¥åç±»å䏿¯æ listen æä½.
CONFORMING TO å¼å®¹äº
Single Unix, 4.4BSD, POSIX 1003.1g. listen 彿°è°ç¨æååºç°äº4.2BSD.
BUGS å误
妿奿¥åç±»åæ¯ AF_INET, å¹¶ä¸åæ° backlog 大äºå¸¸é SOMAXCONN (Linux 2.0&2.2䏿¯128),å®å°è¢«èªå¨æªæä¸º SOMAXCONN çå¼. æçBSDç³»ç»(以åä¸äºBSDæ©å±)å°backlogå¼éå¶ä¸º5.
SEE ALSO åè§
accept(2), connect(2), socket(2)
[䏿çç»´æ¤äºº]
byeyear <love_my_love@263.net >
[ä¸æçææ°æ´æ°]
2002.01.27
ãä¸å½linux论åmanæå页翻è¯è®¡åã:
http://cmpp.linuxforum.net
è·
æ¬é¡µé¢ä¸æçç±ä¸æ
man
æå页计åæä¾ã
䏿 man
æå页计åï¼https://github.com/man-pages-zh/manpages-zh