Objective c 如何停止监视文件路径
我目前正在使用以下功能监视objective-c阵列中的多个文件路径:Objective c 如何停止监视文件路径,objective-c,macos,Objective C,Macos,我目前正在使用以下功能监视objective-c阵列中的多个文件路径: -(void)monitorPath:(NSString*)path{ dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); int fildes = open([path UTF8String], O_EVTONLY); __block typeof(self) blockSe
-(void)monitorPath:(NSString*)path{
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
int fildes = open([path UTF8String], O_EVTONLY);
__block typeof(self) blockSelf = self;
__block dispatch_source_t source = dispatch_source_create(DISPATCH_SOURCE_TYPE_VNODE, fildes,
DISPATCH_VNODE_DELETE | DISPATCH_VNODE_WRITE | DISPATCH_VNODE_RENAME, queue);
dispatch_source_set_event_handler(source, ^{
unsigned long flags = dispatch_source_get_data(source);
NSLog(@"Path altered");
});
dispatch_source_set_cancel_handler(source, ^(void) {
close(fildes);
});
dispatch_resume(source);
}
是否有一种方法可以停止所有被监视的文件路径?调用“
调度\u源\u集\u取消\u处理程序”
”?这将终止所有进程?对于其他正在查看此问题的人,以及。太糟糕了,这里没有更多的上下文可供使用。