Python - 线程化 pyinotify 输出。最好写入文件或字符串
Posted
技术标签:
【中文标题】Python - 线程化 pyinotify 输出。最好写入文件或字符串【英文标题】:Python - threaded pyinotify output. Better to write to file or to a string 【发布时间】:2010-08-05 16:21:24 【问题描述】:我有一个运行线程的 pyinotify 观察程序,称为单独的类,目前它只是在终端窗口中打印它的发现,如果我希望我的脚本根据这些更改执行操作,我最好:
A) 使用每个通知修改一个数组
B) 写入 /tmp 中的文件并从我的主脚本中获取它?
c) 放弃编程
感谢您的任何意见,
斯图尔特
【问题讨论】:
【参考方案1】:import Queue
changes = Queue.Queue()
现在在发现更改的线程中使用changes.put
,在应该对这些更改采取行动的线程中使用changes.get
(Queue 中还有其他一些有用的方法
您应该检查 - 另请注意,根据文档,该模块在 Python 3 中已重命名为 queue
,全部小写)。队列本质上是线程安全的,因此通常是在 Python 中安排线程间协作的最佳方式。
【讨论】:
谢谢亚历克斯,非常有帮助。 :o)以上是关于Python - 线程化 pyinotify 输出。最好写入文件或字符串的主要内容,如果未能解决你的问题,请参考以下文章
pyinotify ERROR] add_watch: cannot watch