我有后台任务(使用NSOperationQueue
或GCD创建),它会定期获取一些数据并将其发送到远程服务器。
我不能使用NSMainQueueConcurrencyType
,因为主运行循环可能会冻结,但也因为我在不同的线程和上下文不是线程安全的。
我不想使用NSPrivateQueueConcurrencyType
,因为我不需要新的单独线程(我已经有一个!)而且这种类型还需要performBlockAndWait:
使我的代码看起来像意大利面:)
所以,我从我自己的线程以同步的方式使用NSConfinementConcurrencyType
,它的工作原理!但是评论说NSConfinementConcurrencyType
已经过时,只是为了向后兼容而存在。
为什么呢?我的情况应该用哪种类型?
答案 0 :(得分:0)
主要思想是,您不再需要使用新的concurency类型的操作队列,并且您不需要上下文合并。此外,新的concurency类型为您提供父子关系。 Olivier Drobnik清楚地描述了更多内容。