Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 17, 2017 09:11:41

Drak
Зарегистрирован: 2017-07-28
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Получение id в socketserver

Есть такой вот код

 import socket
import socketserver
import threading
class MyTCPHandler(socketserver.BaseRequestHandler):
    def handle(self):
        data = self.request.recv(1024)
        data = data.decode('utf-8')
        cur = threading.current_thread()
        responce = cur.name + ' '+ self.client_address[0]+' ' +data
        responce = responce.encode('utf-8')
        self.request.sendall(responce)
class MyTCPServer(socketserver.ThreadingMixIn, socketserver.TCPServer):
    pass
class Ser:
    def __init__(self):
        self.server = MyTCPServer(('localhost', 12345), MyTCPHandler)
        self.thread_server = threading.Thread(target=self.server.serve_forever)
        self.thread_server.daemon = True
        self.id = []
    def start(self):
        self.thread_server.start()
    def loop(self):
        while True:
            pass
s = Ser()
s.start()
s.loop()

Как мне поместить id в лист, если id можно получить только в обработчике, а get_request(), останавливает 1 поток. Можно ли реализовать это без костылей? .-.

Отредактировано Drak (Авг. 17, 2017 09:16:59)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version