1
有时可可允许用户无论是NSOperationQueue或dispath_queue_t传递给异步方法:我应该为异步方法使用什么签名?
+[NSURLConnection sendAsynchronousRequest:queue:completionHandler:]
-[AVPlayer addBoundaryTimeObserverForTimes:queue:usingBlock:]
-[NSNotificationCenter addObserverForName:object:queue:usingBlock:]
有时并不:
-[NSDocument continueActivityUsingBlock:]
-[NSSavePanel beginWithCompletionHandler:]
-[GKAchievementDescription loadImageWithCompletionHandler:]
对我来说,通过队列的方法看起来模糊的,因为您可以在创建块时始终抓住所需的队列。例如:
NSOperationQueue *q = …;
[aDocument continueActivityUsingBlock:^{
[q addOperationWithBlock:^{
// Do actual work here.
}];
}];
也许我失去了一些东西,传递队列有意义吗?
谢谢。我现在清楚地看到,那些需要队列的方法可以按顺序执行传递块。 – Kentzo