Python 在接受函数调用后立即创建新客户端
假设我有以下代码:Python 在接受函数调用后立即创建新客户端,python,sockets,network-programming,Python,Sockets,Network Programming,假设我有以下代码: import socket listener = socket.socket() listener.bind(('0.0.0.0', 59535)) while True: conn, addr = listener.accept() worker_thread = threading.Thread(target=client_handler, args=(conn, addr,)).start() 当我们创建工作线程时,如果新客户端尝试连接到我们的侦听
import socket
listener = socket.socket()
listener.bind(('0.0.0.0', 59535))
while True:
conn, addr = listener.accept()
worker_thread = threading.Thread(target=client_handler, args=(conn, addr,)).start()
当我们创建工作线程时,如果新客户端尝试连接到我们的侦听器套接字,会发生什么情况?他会等待下一个接受电话还是拒绝?如果他愿意等待,默认情况下,该队列中可以同时有多少个客户端(是的,我知道我可以通过
listen
函数设置)?内核中有一个listen队列,因此内核将处理新的客户端,而用户空间部分则执行其他操作。如果内核中的侦听队列已满,则不会接受更多的客户端,即连接将失败。是的,一个小小的区别是-您的下一个“accept”调用不会阻塞,因为套接字将随时准备接受新连接!也许你可以回答另一个问题——相关:无关:.start()
返回None
,因此worker\u线程总是None
@J.F.塞巴斯蒂安非常感谢