簡體   English   中英

有關在iPhone OS中使用NSOperationQueue和NSOperation的問題

[英]Problem about using NSOperationQueue and NSOperation in iphone OS

我正在使用NSOperation來執行任務:使用NSURLConnection下載一些文件,然后合並花費大量CPU和內存的文件
我需要在新/后台線程中執行該任務
所以我將這些任務添加到NSOperationQueue並設置maxConcurrentOperationCount = 2
但是結果是合並文件時它將阻塞主線程(UI暫時不響應),在新線程/后台線程中似乎沒有執行權限
如何按照我的預期去做?

由於您使用的是NSOperationqueue,因此一次只能擁有兩個文件,並且由於所有其他線程或文件均不存在,因此只能合並它們。

因此,要將它們合並在一起,您必須將它們保持在一起。

您要在NSOperationQueue中進行什么類型的操作? Apple的NSOperationQueue文檔包括以下注釋:

注意:在iOS中,操作隊列不使用Grand Central Dispatch來執行操作。 它們為非並發操作創建單獨的線程,並從當前線程啟動並發操作。 有關並行操作和非並行操作之間的區別以及如何執行的討論,請參見《 NSOperation類參考》。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM