2012-12-27 21 views
1

我有一个全天候运行的代码。而且,我想知道是否有任何方法可以用于实时更改变量而不会引发任何错误?一直在使用raw_input(),但是这个“停止”程序,因为它是按顺序运行的。当程序正在运行时,是否可以实时更新列表清单?

我的想法是使用一个真正的同时循环:

while true: 
    ... 
    ... 

,并在最初的几个循环,它会使用默认的捕捉,我已预编程到系统中的所有值。当它运行时,我想在“实时”对某些常数项(作为控制)进行更改。因此,在下一个循环中,它将使用新值而不是预编程版本。

回答

1

你的一些代码或你正在尝试做的细节会有所帮助。

但要做到这一点是有两种方法中的一种方式,一个过程,从standard inraw_input()读取,我们可以称之为P1;和一个处理数据结构的数据结构,在这个例子中,我们称之为p2

这两个进程可以使用套接字或任何你想要的消息传递进行通信。

然后就一定要避免新的数据被读取P1,但在P2尚未更新竞争条件。因此p2将继续并使用过期数据。一种方法是使用锁。

+0

感谢您的建议。我正在做一个实验,要求程序在优化结果的同时24/7全天候运行。我正在优化它的方式是通过我的控制变量。目前,我必须停止程序,手动更改值并重新启动程序。因此,我正在探索选项,以了解我可以做什么来实现实时作品更新的想法。嗯...我听说过程,但之前没有锁。肯定会阅读它。谢谢! –

相关问题