0

私はタスクを実行するため にNSOperation を使用しています: NSURLConnection でいくつかのファイルをダウンロードしてから、多くの CPU とメモリ
を消費するファイルをマージします 新しい/バックグラウンド スレッドでタスクを実行する必要があります。ファイルをマージすると、メインスレッドがブロックされます(UIがしばらく応答しません)、新しい/バックグラウンドスレッドで実行されていないよう です。どうすれば期待どおりに動作しますか?


4

2 に答える 2

1

NSOperationQueue に入れている操作の種類は何ですか? NSOperationQueue に関する Apple のドキュメントには、次の注記が含まれています。

注: iOS では、オペレーション キューは Grand Central Dispatch を使用してオペレーションを実行しません。非同時操作用に別のスレッドを作成し、現在のスレッドから同時操作を開始します。同時操作と非同時操作の違いとその実行方法については、NSOperation クラス リファレンスを参照してください。

于 2010-11-08T19:44:22.140 に答える
1

NSOperationqueueを使用しているため、一度に2つのファイルしか持たず、他のすべてのスレッドまたはファイルがそこに存在しないため、それらのみをマージできます。

したがって、それらをマージするには、一度にまとめておく必要があります。

于 2012-08-30T10:11:59.567 に答える