To understand the backlog argument, we must realize that for a given listening socket, the kernel maintains two queues :要明白backlog参数的含义,我们必须明白对于一个listening socket,kernel维护者两个队列: 1.An incomplete connection queue, which contains an entry for each SYN t
listen函数仅仅由TCP服务器调用,它做2件事: 1)当socket函数创建一个套接字时,它被假设为一个主动套接字,也就是说,它是一个将调用connect发起连接的客户套接字 listen函数把一个未连接的套接字转换成一个被动套接字,指示内核应接受指向该套接字的连接请求 调用listen导致套接字从CLOSED状态转换到LISTEN状态 2)本函数的第二个参数规定了内核应该为相应套接字排队的最大连接个数 int listen ( int sockfd, int backlog); 本函数在调
代码改正之前,先执行了listen,到了bind就报错:此程序只需将listen和改到bind后面即可 from socket import *from multiprocessing import Process import re HTML_FILE = './html' class Server(object): def __init__(self): self.server_socket = socket(AF_INET,SOCK_STREAM)