【发布时间】:2013-06-04 12:17:31
【问题描述】:
问题
我需要能够在后台调用函数而不冻结控制台。我有多线程的经验,但我希望它按顺序完成任务。最好的方法是什么?非常感谢示例代码,因为英语不是我的第一语言。
背景信息(针对我的问题)
我使用的是经过大量修改的 pyttsx 版本,因此当调用特定函数时,它会执行 SAPI 调用,从而冻结控制台。我希望能够拨打speak.main(decrypt(data)) 并且仍然能够在我的计算机说话时继续输入数据。
【问题讨论】:
-
有两个线程,一个说话线程和一个控制台线程。在两者之间创建一个共享队列,当需要说出新数据时,将其推送到队列中。说话线程空闲它队列为空,如果不是,它会弹出一个值并说话。
-
谢谢!如果您想将此作为问题提出,我很乐意标记它。你解决了我的问题! :) lonelycode.com/2011/02/04/…
标签: python multithreading function python-2.7 freeze