【发布时间】:2010-08-05 16:21:24
【问题描述】:
我有一个运行线程的 pyinotify 观察程序,称为单独的类,目前它只是在终端窗口中打印它的发现,如果我希望我的脚本根据这些更改执行操作,我最好:
A) 使用每个通知修改一个数组
B) 写入 /tmp 中的文件并从我的主脚本中获取它?
c) 放弃编程
感谢您的任何意见,
斯图尔特
【问题讨论】:
我有一个运行线程的 pyinotify 观察程序,称为单独的类,目前它只是在终端窗口中打印它的发现,如果我希望我的脚本根据这些更改执行操作,我最好:
A) 使用每个通知修改一个数组
B) 写入 /tmp 中的文件并从我的主脚本中获取它?
c) 放弃编程
感谢您的任何意见,
斯图尔特
【问题讨论】:
import Queue
changes = Queue.Queue()
现在在发现更改的线程中使用changes.put,在应该对这些更改采取行动的线程中使用changes.get(Queue 中还有其他一些有用的方法
您应该检查 - 另请注意,根据文档,该模块在 Python 3 中已重命名为 queue,全部小写)。队列本质上是线程安全的,因此通常是在 Python 中安排线程间协作的最佳方式。
【讨论】: