#python #xml-rpc #simplexmlrpcserver
Вопрос:
Я использую PyQt5 для графического интерфейса. Графический интерфейс может запустить SimpleXMLRPCServer с помощью кнопки. Мне также нужна кнопка, чтобы снова остановить SimpleXMLRPCServer. Мой код выглядит так:
def btStartClicked(self):
self._Server = SimpleXMLRPCServer(
("localhost", 5556), requestHandler=RequestHandler, allow_none=True
)
self.serverTask = threading.Thread(target=self.startServer)
self.serverTask.start()
def btStopClicked(self):
self.shutdowntask = threading.Thread(target=self.shutdownServer).start()
self.serverTask.join()
def shutdownServer(self):
self._Server.shutdown()
def startServer(self):
self.Server.register_introspection_functions()
self.Server.register_instance(Server())
self.Server.serve_forever()
Когда я нажимаю кнопку «Стоп», сервер завершает работу, но запускается снова с новым идентификатором PID. Как мне выйти из сервера раз и навсегда?