我将 PyQT5 用于 GUI。GUI 可以使用按钮启动 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 重新启动。如何一劳永逸地退出服务器?