python的socket里listen函数

http://www.douban.com/note/337457460/?type=like

listen里有个参数backlog是指定tcpsever可以同时接受多少个客服端的连接申请,当超过此数时server将拒绝客户端的连接申请,给出socket.error: [Errno 10061]错误。

tcp的server尽管可以同时接受n个客服端连接,但只能和第一个连接的客服端互相通信,当第一个tcp连接的客户端关闭后才能和第二个连接申请的客户端通信,即后边的被阻塞了,一次只能和一个tcp客户端进行通信。

ocket.listen( backlog )

backlog指定最多允许多少个客户连接到服务器。它的值至少为1。收到连接请求后,这些请求需要排队,如果队列满,就拒绝请求。

backlog应该理解为阻塞队列的长度,总共与服务器连接的客户端一共有 backlog + 1 个。

阻塞队列FIFO,当连接客户端结束后阻塞队列里的第一个客服端与服务器连接成功。

    原文作者:hshl1214
    原文地址: https://blog.csdn.net/hshl1214/article/details/45873197
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞