我有一个线程,它在无限循环中打印一个变量值(例如var_x = "Some string"
,var_x
- 是全局的。)
如果我更改var_x
的值,则线程会立即打印更改的值。
我们假设有一些时间间隔e。 G。 15秒
我想得到一个结果:当我更改var_x
的值时,例如在间隔的第5秒,线程不应该立即改变,但应该等到间隔时间结束(接下来的10秒)。
Python遇到这种问题的最佳方法是什么?
答案 0 :(得分:0)
我通过创建两个同时启动的线程解决了这个问题:
两个线程都作为守护进程运行并且具有无限循环:thread0打印全局变量的值,thread1睡眠一段时间间隔然后更改打印thread0的值。
如果要更改值,则无法直接访问打印变量,但可以更改临时值的值。 Thread1将临时值分配给打印的值。