TCP服务端实现并发
2022/1/15 6:05:35
本文主要是介绍TCP服务端实现并发,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
- 服务端
# 封装过 import socket from threading import Thread # 套字节 TCP协议 server = socket.socket() # 绑定ip与port server.bind(('127.0.0.1', 8080)) # 连接池 子线程 客户端连接 不受连接池限制所影响! server.listen(5) # 执行程序 def talk(sock): # 循环接收客户端数据 while True: # 异常捕获 try: # 固定每次接收数据, data = sock.recv(1024) # 判断接收是否为空 if len(data) == 0: break # 将接收数据解码 print(data.decode('utf8')) # 发送数据 sock.send(data + b'gun dan!') except ConnectionResetError as e: print(e) break # 结束套字节 sock.close() # 调用执行程序 while True: # 循环 被动客户端连接 并返回(sock,addr)sock是通信,发送数据与接收数据 # addr是客户端地址 sock, addr = server.accept() print(addr) # 开设多进程或者多线程 t = Thread(target=talk, args=(sock,)) # 执行打开子线程 t.start()
- 客户端
import socket # 客户端 套字节 client = socket.socket() # 连接服务端ip与port client.connect(('127.0.0.1', 8080)) while True: # 获取用户输入 msg = input('>>>') # 发送数据 并编码 client.send(msg.encode('utf8')) # 接收服务端数据 data = client.recv(1024) # 解码并打印 print(data.decode('utf8'))
这篇关于TCP服务端实现并发的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-10-04el-table 开启定时器下,表格的选中状态会消失是什么原因-icode9专业技术文章分享
- 2024-10-03如何安装和初始化飞牛私有云 fnOS?-icode9专业技术文章分享
- 2024-10-03如何安装 App 并连接到飞牛 NAS?-icode9专业技术文章分享
- 2024-10-03如何安装飞牛 TV 并连接到影视服务器?-icode9专业技术文章分享
- 2024-10-03如何在PVE和ESXI上安装飞牛私有云 fnOS?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS安装系统异常情况处理-icode9专业技术文章分享
- 2024-10-03飞牛NAS如何创建存储空间?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS硬盘会自动休眠吗?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS如何安装飞牛影视和创建媒体库?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS如何为家人朋友开通影视账号?-icode9专业技术文章分享