2012-10-03 95 views
1

我有一个嵌入python脚本的应用程序。暂停嵌入的python脚本执行

我正在从C添加对Python的调用,我的问题是我需要暂停脚本执行让应用程序运行,并从挂起的位置恢复执行。

这个想法是,python会调用,说“WaitForData”函数,所以在这一点上脚本必须暂停(暂停)调用保释出来,所以应用程序事件循环会继续。当必要的数据存在时,我想恢复脚本的执行,就像那个时候python调用返回一样。

我正在运行单线程python。

任何想法我怎么能做到这一点,或类似的东西,我将有应用程序事件循环之前运行的python调用退出?

回答

1

那么,我可以想出的唯一方法是在单独的线程上运行Python引擎。然后主线程在python线程运行时被阻塞。

当我需要挂起时,我阻塞Python线程,让主线程运行。必要时,主线程的OnIdle,我将其阻塞并让python继续。

它似乎工作正常。