大佬教程收集整理的这篇文章主要介绍了在iOS中的dispatch_async队列中的objective-c – kill项目,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
dispatch_async(dispatch_get_global_queue(2,0),^{ for (int i=0; i<[self.manufacturers count]; i++) { NSString *manufacturerID = [[[self.manufacturers objectATindex:i] ManufacturerID] stringvalue]; [self doSync:manufacturerID withIndex:i setTimer:YES]; } });
如果我创建一个队列并将其命名,然后在视图的dealloc上释放它,它们仍然继续运行.
NSOperationQueue(更高层次的抽象,但仍使用GCD构建)确实支持取消操作.所以,例如,您可以创建一系列NSOperations,并将它们添加到NSOperationQueue,然后在不需要完成时将消息-cancelAllOperations发送到队列.
您选择的很多架构将取决于它们中有多少是运行的,以及它们是否具有不同的触发器.在这些实现中,NSOperation可能是“最干净”的解决方案,因为您有一个任意队列,您可以观察完成操作,还可以取消未完成的操作.进一步降低黑客的规模将是一个不稳定的位置,每个这些块在紧密循环内观察,以确定是否过早完成.然而,进一步下降将是同一基本功能的全局变量.
最后,甚至NSOperation的实现都要进行一个测试,以便在一致的位置退出(因为只是杀死一个线程可能导致正在操作的数据或分配/再培训中的数据不一致).
以上是大佬教程为你收集整理的在iOS中的dispatch_async队列中的objective-c – kill项目全部内容,希望文章能够帮你解决在iOS中的dispatch_async队列中的objective-c – kill项目所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。