所以我遇到了一个大问题。我目前正在尝试使用多处理/子处理来运行我的 Tkinter 应用程序旁边的文件,但是,一旦我运行该过程,GUI 就会卡住,直到我完成该过程。有什么办法可以解决这个问题吗?我还查看了关于 SO 的其他问题,但无济于事(我发现有人建议 root.update() 但是它没有按预期工作。
注意:我没有包含 GUI 元素,因为我已经制作了基本程序来尝试这个(只有几行)并遇到同样的问题。值得注意的是,我正在运行 Windows。
代码(断章取义):
def run_file(self):
self.root.update()
sub_process=subprocess.call(self.sub_proc_args)
process=multiprocessing.Process(target=self.run_file())
process.start()
请您参考如下方法:
通过执行 self.run_file(),您将在多处理可以使用它之前调用 run_file。您需要使用 target=self.run_file(注意,没有括号)。
