首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >中断pyinotify通知器循环

中断pyinotify通知器循环
EN

Stack Overflow用户
提问于 2017-12-11 12:11:22
回答 2查看 1.4K关注 0票数 1

我使用pyinotify.notifier来跟踪文本文件中的更改。

当我在它中得到一个特定的更改时,我想要中断通知器循环。通过使用notifier.stop()似乎不起作用。

以下是我要做的事:

代码语言:javascript
复制
class ModHandler(pyinotify.ProcessEvent):
    def process_IN_MODIFY(self, evt):
        #... Do Stuff
        if "Expected change":
               #break notifier loop

if __name__ == "__main__":

    handler = ModHandler()
    wm = pyinotify.WatchManager()
    notifier = pyinotify.Notifier(wm, handler)
    wdd = wm.add_watch('example.file', pyinotify.IN_MODIFY)
    notifier.loop()
    #when finished the loop, do more stuff

如何才能中断线程循环并返回到主程序?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-12-11 12:25:14

文献资料指出:

notifier.loop() 对这个方法的调用是阻塞的,直到我们输入c-c (sigint)

所以这就是你需要做的。发送信号。有些方法是这样做的:

票数 3
EN

Stack Overflow用户

发布于 2019-09-12 17:01:25

从0.9.0版本开始,您可以通过传递回调函数来停止通知器循环。当求值为True时,中断循环并停止通知程序。

https://github.com/seb-m/pyinotify/wiki/Recent-Developments#changes-introduced-with-pyinotify-090

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47752723

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档