最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

python的单线程多任务的实现

来源:动视网 责编:小OO 时间:2020-11-27 14:23:19
文档

python的单线程多任务的实现

本文实例为大家分享了python实现单线程多任务非阻塞TCP服务端的具体代码,供大家参考,具体内容如下:,# coding:utf-8from socket import *# 1.创建服务器socketsock = socket(AF_INET.SOCK_STREAM)# 2.绑定主机和端口addr = (';';.7788) #sock.bind(addr)# 3.设置最大监听数目。
推荐度:
导读本文实例为大家分享了python实现单线程多任务非阻塞TCP服务端的具体代码,供大家参考,具体内容如下:,# coding:utf-8from socket import *# 1.创建服务器socketsock = socket(AF_INET.SOCK_STREAM)# 2.绑定主机和端口addr = (';';.7788) #sock.bind(addr)# 3.设置最大监听数目。

这篇文章主要为大家详细介绍了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))

文档

python的单线程多任务的实现

本文实例为大家分享了python实现单线程多任务非阻塞TCP服务端的具体代码,供大家参考,具体内容如下:,# coding:utf-8from socket import *# 1.创建服务器socketsock = socket(AF_INET.SOCK_STREAM)# 2.绑定主机和端口addr = (';';.7788) #sock.bind(addr)# 3.设置最大监听数目。
推荐度:
标签: 实现 多任务 python
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top