300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > python 单线程_python的单线程多任务的实现

python 单线程_python的单线程多任务的实现

时间:2022-05-11 09:25:11

相关推荐

python 单线程_python的单线程多任务的实现

这篇文章主要为大家详细介绍了python实现单线程多任务非阻塞TCP服务端的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了python实现单线程多任务非阻塞TCP服务端的具体代码,供大家参考,具体内容如下

# coding:utf-8

from socket import *

# 1.创建服务器socket

sock = socket(AF_INET, SOCK_STREAM)

# 2.绑定主机和端口

addr = ('', 7788) #

sock.bind(addr)

# 3. 设置最大监听数目,并发

sock.listen(10)

# 4. 设置成非阻塞

sock.setblocking(False)

# 保存客户端socket

clientAddrList = []

# print(sock.)

while 1:

try:

clientSocket, clientAddr = sock.accept()

except:

pass

else:

print("一个新客户端到来:%s" % str(clientAddr))

clientSocket.setblocking(False)

clientAddrList.append((clientSocket, clientAddr))

for clientSocket, clientAddr in clientAddrList:

try:

recvData = clientSocket.recv(1024)

except:

pass

else:

if len(recvData) > 0:

print("%s:%s" % (str(clientAddr), recvData))

else:

clientSocket.close()

clientAddrList.remove((clientSocket, clientAddr))

print("%s 已经下线" % str(clientAddr))

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。