import socket
import threading
def request(a,b):
while True:
recv_data = conn_socket.recv(1024).decode('gbk')
if recv_data:
print(f'客户端ip:{ip_post}')
print(f'数据:{recv_data}')
conn_socket.send('信息收到,通信关闭,祝你好运同志!'.encode('gbk'))
else:
print(f'ip:{ip_post}客户下线')
break
conn_socket.close()
if __name__ == '__main__':
tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
tcp_server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, True)
tcp_server_socket.bind(('', 8080))
tcp_server_socket.listen(128)
while True:
# 接受客户端连接,产生新套接字对象
conn_socket, ip_post = tcp_server_socket.accept()
# 创建子线程
sub_thread = threading.Thread(target=request, args=(conn_socket, ip_post))
sub_thread.setDaemon(True)
sub_thread.start()
TCP服务器开发七步走(多线程)
最新推荐文章于 2025-11-21 10:57:09 发布
该博客展示了如何使用Python的socket和threading模块创建一个简单的多线程TCP服务器。服务器监听8080端口,接收客户端连接,并在接收到数据后发送确认消息,然后关闭连接。
743

被折叠的 条评论
为什么被折叠?



