1

我有一个 24/7 运行的代码。而且,我想知道是否有任何方法可以让我实时更改变量而不会引发任何错误?一直在使用 raw_input() 但这会“停止”程序,因为它是按顺序运行的。

我的想法是使用 while true 循环:

while true:
    ...
    ...

对于前几个循环,它将使用默认捕获我已预先编程到系统中的所有值。在它运行时,我想“实时”更改一些常数项(作为控制项)。因此,在下一个循环及以后,它将使用新值而不是预编程版本。

4

1 回答 1

1

您尝试执行的某些代码或详细信息会有所帮助。

但是一种方法是有两个进程,一个从standard inwith读取的进程raw_input(),我们可以称之为p1;还有一个处理数据结构的,在这种情况下是列表,我们称之为p2

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

然后确保避免在p1中读取新数据但在p2中尚未更新的竞争条件。因此p2将继续使用过期数据。一种方法是使用锁。

于 2012-12-27T19:31:03.680 回答