iphone - Dispatch Queue 和 NSOperationQueue 的区别

标签 iphone multithreading grand-central-dispatch nsoperationqueue nsinvocation

我对 GCD 和线程非常陌生。我已经完成了教程并感到非常困惑。 有人可以用简单的话解释一下吗?请不要建议苹果开发者链接..

提前致谢!

最佳答案

NSOperationQueue 更适合可能需要取消或具有复杂依赖关系的长时间运行的操作。 GCD 调度队列更适合具有最小性能和内存开销的短任务。

可以取消已在 NSOperationQueue 中排队的操作(只要操作支持它)。当你将一个 block 放入 GCD 调度队列中时,它肯定会在某个时刻被执行。

查看以下链接,可能对您有帮助。

Operation Queue vs Dispatch Queue for iOS Application

关于iphone - Dispatch Queue 和 NSOperationQueue 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17591687/

相关文章:

iphone - UITableView 编辑不起作用

c++ - C++中的unique_lock和shared_lock有什么区别

swift - 如何在 0.3 秒后执行给定次数的 Action ?

ios - Swift iOS -DispatchGroup with URLSession 正在锁定它不在的应用程序的其他部分

multithreading - 可重用屏障算法

ios - Swift 处理大量数据并使用队列正确显示

iphone - 空检查 NSString

iphone - 每次在 xcode 中构建 "dependent Project"

iphone - 如何在应用程序中录制时创建红色标题

Java Thread.join : what is the behaviour when calling join on multiple threads