1. 程式人生 > >python 多線程隊列套接字

python 多線程隊列套接字

nbsp self nec pytho run end accep HR reading

#server端
import
socket import selectors import threading from threading import Thread import time import queue selector = selectors.DefaultSelector() socket_server = socket.socket() address_server = (0.0.0.0,8080) socket_server.bind(address_server) socket_server.listen(1000) q = queue.Queue(5) class Producer(Thread):
‘‘‘進隊 初始化套接字 套接字入隊 ‘‘‘ def __init__(self, q, socket_server): super().__init__() self.q = q self.socket_server = socket_server def run(self): while True: connect,address = self.socket_server.accept() self.q.put(connect)
class Conmuer(Thread): ‘‘‘出隊 套接字出隊 ‘‘‘ def __init__(self, q): super().__init__() self.q = q def run(self): while True: connect = self.q.get() print(type(connect)) massage = connect.recv(1024) if massage: connect.send(massage)
else: connect.close() # self.q.task_done() producer = Producer(q, socket_server) conmuer = Conmuer(q) producer.start() conmuer.start() client端
import socket
import time


socket = socket.socket()
address = (127.0.0.1,8080)
socket.connect(address)
massage_send = input(請輸入)
massage_send = bytes(massage_send, encoding=utf-8)
socket.send(massage_send)
massage_rev = str(socket.recv(1024), encoding=utf-8)
print(massage_rev)



python 多線程隊列套接字