我正在开发一个用于处理计算机模拟的Python项目,同时也在为它开发GUI。(核心逻辑本身不需要GUI。)我使用的GUI工具包是wxPython,但我认为我的问题足够普遍,不依赖于它。
目前GUI的工作方式是,在同一进程和线程上启动核心逻辑包(称为
我该怎么办?
我听说过在GUI之外的单独进程中启动核心逻辑的选项。这听起来很有趣,但我对此有很多问题。
目前GUI的工作方式是,在同一进程和线程上启动核心逻辑包(称为
garlicsim
)。这种方法可行,但我知道它是有问题的,因为如果核心逻辑需要进行一些费时的计算,GUI将会挂起,这是不可接受的。我该怎么办?
我听说过在GUI之外的单独进程中启动核心逻辑的选项。这听起来很有趣,但我对此有很多问题。
- 我应该使用
multiprocessing
包还是subprocess
包来启动新进程? - 如何轻松访问GUI进程中的模拟数据?毕竟,它将存储在其他进程中。用户应该能够轻松流畅地浏览模拟时间线。怎么做才能实现这一点?