我总是使用GCD
从网络服务中获取数据。现在我必须使用NSOperation
和NSOperationQueue
。但我对NSOperation
和NSOperationQueue
的工作感到困惑。
假设我有两个API,Login API和Registration API。我是否必须为它创建两个NSOperation
子类,如LoginOperation和RegistrationOperation?或者我可以通过一个NSOperation
Class
发送各种请求?
我应该如何保持NSOperationQueue
类的中心,以便继续向其添加操作类对象。
请提供此类示例项目的链接。
答案 0 :(得分:0)
这会因项目而异,但通常您可能只希望只有NSOperation
的一个基本子类和子类来满足您的特定请求,例如LoginOperation
或RegistrationOperation
。您可能希望查看AFNetworking
,因为它已经是一个非常完善的子类NSOperation
的网络库。
根据您的应用正在执行的操作以及管理请求的方式,您可能需要更多NSOperationQueue
。这将帮助您跟踪各种请求,并知道它们是否已完成,如果需要,需要同步等等。
深入了解更多内容: http://www.objc.io/issue-2/concurrency-apis-and-pitfalls.html