我想编写一个程序,不断计算数字,并在窗口画布上绘制,包括绘制文本和设置像素。所以程序可能无法进入事件循环(main_loop),因为这将停止数字的计算。
有没有办法在没有事件循环的情况下绘制项目?
或者,是否应该创建一个线程,以便一个线程进行计算,而一个线程处理窗口的事件循环?
我想编写一个程序,不断计算数字,并在窗口画布上绘制,包括绘制文本和设置像素。所以程序可能无法进入事件循环(main_loop),因为这将停止数字的计算。
有没有办法在没有事件循环的情况下绘制项目?
或者,是否应该创建一个线程,以便一个线程进行计算,而一个线程处理窗口的事件循环?
必须进行长时间计算的基于事件的程序的一般策略是以下之一:
如果您可以管理它,第一种方法是理想的。然后我的个人偏好转到第三种方法。如果可能的话,应该避免使用 IMO 线程,除非您完全了解线程编程(即便如此,我仍然通常建议使用单独的进程)。