2011-04-04 37 views
1

如果IPhone應用程序通常只使用一個共享的NSOperationQueue,並存儲在應用程序委託中,並且每個控制器都會根據需要將NSOperations放入其中,或者每個控制器都可以有它自己的NSOperationQueue?兩種方法都可接受嗎?建議在IPhone中使用NSOperationQueue ap

回答

1

在瀏覽了Concurrency Programming Guide之後,看起來這兩種方法都是安全合理的。我能找到的唯一要考慮的趨向了另一種是這句話:

如果你的應用程序有多個 操作隊列,每個獨立於任何其他 隊列的優先考慮其 自己的操作。因此,對於在不同隊列中的高優先級 操作之前的低優先級操作 仍可能執行 。

如果您擔心大量具有優先級衝突的操作,那麼最好使用單個隊列來確保優先級最大化。否則,在代碼的上下文中更合理的就好了。