2017-12-11 18 views
0

私はpyinotify.notifierを使用して、テキストファイルの変更を追跡しています。pyinotify通知ループを中断する

特定の変更が加えられたら、通知ループを解除します。 notifier.stop()を使用すると動作しないようです。ここで

は私がやろうとしているものです:

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 

どのように糸ループを打破し、メインプログラムに戻ることができますか?我々はc-cを入力するまで、このメソッドの呼び出しは(SIGINT)

は、だからそれはあなたがする必要があるものだブロックしている

notifier.loop()
:。

答えて

2
+0

それは働きました。 'os.kill(os.getpid()、signal.SIGINT)'を追加してループを終了しました。ご協力いただきありがとうございます。 – MSO

関連する問題