您的位置:首页 > 理论基础 > 计算机网络

Python中tcp客户端实现代码

2018-04-10 20:40 429 查看
import socket
import threading

# 接收客户端消息
def recv_msg(service_client_socket, ip_port):
while True:
# 接收客户端消息
recv_data = service_client_socket.recv(1024)
if recv_data:
# 解码
recv_content = recv_data.decode("gbk")
print(recv_content)
service_client_socket.send("ok, ing...".encode("gbk"))

else:
print(ip_port, "客户端断开链接了")
break
# 终止和客户端的通信
service_client_socket()

if __name__ == '__main__':
# 创建tcp服务端socket
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(("", 4433))
# 设置服务端监听
tcp_server_socket.listen(128)
# 循环接收客户端的请求
while True:
# 接收客端链接请求
service_client_socket, ip_port = tcp_server_socket.accept()
print("客户端ip端口:", ip_port)

# 创建接收数据的的子线程
recv_thread = threading.Thread(target=recv_msg, args=(service_client_socket, ip_port))
# 设置守护主线程
recv_thread.setDaemon(True)
# 启动接收数据的子线程
recv_thread.start()

# 关闭服务端socket,不接受客户端链接请求
tcp_server_socket.close()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python tcp服务端