NSOPERATIONを同じオブジェクトにグループ化し、IOSで終了したときに検出します。
-
13-12-2019 - |
質問
私は5 nsblockoperationがそれぞれオブジェクトのNSArrayを生成し、それをUiveViewデータソースとして機能する共有同期NSmutableArrayに追加します。
操作は互いに独立しており、完了したらすぐにUiTableViewデータのリロードを起動する必要があります。
残念ながら、nsoperationでこれを行う方法を見つけることができませんでした。私は別のマルチスレッドデザインを使用する必要がありますか?
解決
リロードデータ呼び出しをもう1つのNSoperationに追加します。これは、その依存関係としてある(addDependency:
を参照)もう1つの5つの操作を持ちます。その後、他のものが完了するまで実行されません。
必ずメインスレッドへのGCDディスパッチであなたのUI呼び出しをラップしてください。
NSOPERATIONリファレンスから:
依存関係は、特定の順序で操作を実行するのに便利な方法です。AddDependency:およびServeDependency:メソッドを使用して、操作の依存関係を追加および削除できます。デフォルトでは、依存関係を持つ操作オブジェクトは、その依存オペレーションオブジェクトのすべてが実行を終了するまで、準備ができていません。ただし、最後の従属操作が終了すると、操作オブジェクトは準備ができて実行できます。
所属していません StackOverflow