当前位置:   article > 正文

python使用socket模块实现TCP高并发任务

python使用socket模块实现TCP高并发任务
  1. from threading import Thread
  2. import socket
  3. class HandelParse(Thread):
  4. def __init__(self,socket_obj):
  5. super().__init__()
  6. self.socket_obj = socket_obj
  7. def run(self):
  8. while True:
  9. recv_msg = self.socket_obj.recv(1024)
  10. if len(recv_msg)!=0:
  11. print(recv_msg.decode("utf-8"))
  12. self.socket_obj.send(recv_msg) #再次原路发回去。注tcp用send方法,udp用sendto方法
  13. else:
  14. self.socket_obj.close()
  15. break
  16. class TcpServer(Thread):
  17. def __init__(self):
  18. super().__init__()
  19. self.tcp_sercer = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
  20. self.tcp_sercer.bind(("",7878))
  21. self.tcp_sercer.listen(128) #设置监听数量
  22. def run(self):
  23. while True:
  24. msg,client_info = self.tcp_sercer.accept() #等待连接
  25. #创建子线程,实现多并发
  26. handel_data_thread = HandelParse(msg)
  27. handel_data_thread.start()
  28. def __del__(self):
  29. self.tcp_sercer.close()
  30. if __name__ == '__main__':
  31. tcp = TcpServer()
  32. tcp.start()

使用网络调试工具测试。同时开通3 个调试助手软件进行连接。截图如下:

网络调试工具下载地址:

https://www.onlinedown.net/soft/971066.htm

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/457208
推荐阅读
相关标签
  

闽ICP备14008679号