Ton*_*ony 3 cocoa multithreading
如果NSEnumerationConcurrent在使用块枚举集合时使用,Cocoa是否保证该块将同时执行?或者它实际上取决于需要枚举的对象数量?另外,当操作实际上是并发时,Cocoa如何决定启动多少线程?
编辑:其他问题
另一方面,是枚举NSEnumerationConcurrent选项同步还是异步的集合?换句话说,如果您在枚举代码下面有一些代码,它是否仅在所有并发枚举完成后才执行?(线程加入?)
不,NSEnumerationConcurrent不保证块将同时执行.
并且,是的,例如,如果您使用 - [NSArray enumerateObjectsWithOptions:usingBlock:]该调用将不会返回,直到枚举完成.
如果指定,当前实现似乎会在全局普通优先级GCD队列上调度这些块NSEnumerationConcurrent.我确信不能保证永远是真的.
希望有所帮助.