1

问题

我需要能够在后台调用函数而不冻结控制台。我有多线程的经验,但如果它按顺序完成任务,我会更喜欢。最好的方法是什么?非常感谢示例代码,因为英语不是我的第一语言。

背景信息(具体到我的问题)

我使用的是经过大量修改的 pyttsx 版本,因此当调用特定函数时,它会执行 SAPI 调用,从而冻结控制台。我希望能够speak.main(decrypt(data))在我的计算机讲话时打电话并继续输入数据。

4

1 回答 1

1

我的建议是有两个线程,一个说话线程和一个控制台线程。在两者之间创建一个共享队列,当需要说出新数据时,将其推送到队列中。说话线程空闲它队列为空,如果不是,它弹出一个值并说话。

于 2013-06-04T13:16:26.667 回答