本文实例为大家分享了python多线程实现TCP服务端的具体代码,供大家参考,具体内容如下
需求
1.创建一个TCP服务器接收服务端发送的信息并给予答复
2.以多线程方式实现接收客户端信息
3.间客户端发送的信息解码输出
思路分析
1.创建一个TCP客户端套接字
2.写一个接收消息的方法,可以接收客户端消息并解码输出
3.客户端被动监听,每有一个客户端连接就创建一个子线程执行接收消息方法
代码实现
# 导入模块
import socket
import threading
# 接收消息
def recv(client_socket, ip_port):
while True:
client_text = client_socket.recv(1024)
# 如果接收的消息长度不为0,则将其解码输出
if client_text:
print("[客户端消息]", ip_port, ":", client_text.decode("gbk"))
# 给客户端响应
client_socket.send("收到\n".encode())
# 当客户端断开连接时,会一直发送''空字符串,所以长度为0已下线
else:
print("客户端", ip_port, "已下线")
client_socket.close()
break
# 程序主入口
def main():
# 创建T