我正在使用OSX FSEventStream監視特定目錄中的文件系統更改。我在查看文檔here,我發現了一個有趣的標誌,kFSEventStreamCreateFlagIgnoreSelf。FSEventStream:kFSEventStreamCreateFlagIgnoreSelf標誌是做什麼的?
根據使用此標誌的FSEvents框架不會通知您的文檔「是由當前進程觸發的事件。」
這聽起來不錯。這正是我想要的,但在實踐中,我發現我仍然得到一些由當前進程觸發的事件。
在我有限的測試,如果監控過程中創建一個新的文件,或重命名和現有文件的事件仍然被觸發。雖然現有文件至少有一些修改不會觸發事件。
基於有限的文件(和國旗的名字),我不希望任何事件由當前進程觸發。
所以我的問題是雙重的: - 這是預期的行爲?我擔心,如果我依靠現存的行爲,那可能是無意的,將來它可能會從我下面改變。
二: - 如果是,沒有人知道使用此標誌的時候我可以期待仍然可以投放哪些事件。
你有解決這個問題的辦法嗎? –