2013-05-15 20 views

Antwort

3

Diese Flagge einer der vielen Fahnen, die auf Ihre FSEventStreamCallback Funktion übergeben werden können:

kFSEventStreamEventFlagItemCreated = 0x00000100, 
    kFSEventStreamEventFlagItemRemoved = 0x00000200, 
    kFSEventStreamEventFlagItemInodeMetaMod = 0x00000400, 
    kFSEventStreamEventFlagItemRenamed = 0x00000800, 
    kFSEventStreamEventFlagItemModified = 0x00001000, 
    kFSEventStreamEventFlagItemFinderInfoMod = 0x00002000, 
    kFSEventStreamEventFlagItemChangeOwner = 0x00004000, 
    kFSEventStreamEventFlagItemXattrMod = 0x00008000, 
    kFSEventStreamEventFlagItemIsFile = 0x00010000, 
    kFSEventStreamEventFlagItemIsDir = 0x00020000, 
    kFSEventStreamEventFlagItemIsSymlink = 0x00040000 

Und das ist ein Rückruf, der aufgerufen wird, wenn Dateisystem (FS) Ereignisse auftreten.

Interessant genug, auch die FSEvents.h-Datei bietet keine nützliche Ausarbeitung dieser Ereignisflags. Aber vermutlich wird der Rückruf aufgerufen, wenn ein Element erstellt oder gelöscht oder umbenannt oder geändert usw.

Nun, über Inodes:

Inodes are a unique ID that the Macintosh file system uses to track files. Wenn die einer Datei zugeordnete Inode-Nummer geändert oder in irgendeiner Weise geändert wird, nehme ich an, dass ist, wenn Ihr Rückruf mit "kFSEventStreamEventFlagItemInodeMetaMod" aufgerufen wird.

+0

Dies scheint nicht wirklich eine autoritative Antwort. Es ist informativ, aber die eigentliche Frage war: "Wann wird es eingestellt?" Auch wenn man die Liste anderer Flags betrachtet, ist "kFSEventStreamEventFlagItemModified" ein anderes Flag, das übergeben werden kann, so dass es so aussieht, als ob diese sich gegenseitig ausschließen, im Vergleich zu dem, was gesagt wird: "Wenn die einer Datei zugeordnete Inode-Nummer geändert wird oder in gewisser Weise modifiziert " –