もう一度問題が発生しましたが、どう対処すればよいかわかりません。コンテンツが次のように更新される UICollectionView があります。
- ユーザーが設定パネルを上にスライドします (半透明のビュー オーバーレイによって UICollectionView が淡色表示されます)。
- ユーザーはさまざまなボタンを押して、UICollectionView が表示するオブジェクトを変更します。オブジェクトは同時に更新されます (一部の設定は他の設定よりも更新に時間がかかります)。
- ユーザーが設定パネルを下にスライドします。
- UICollectionView は、新しいオブジェクトに基づいて更新されます。
問題は、上記のアクションを実行するたびにプログラムが (3 ~ 4 秒間) 停止することです。これらのタスクの一部を他のスレッドにオフロードすることが何らかの形でここに関与していることを理解しています。どのタスクを他のスレッドにオフロードするか、およびメイン スレッドで次のアクションが発生する前にそれらのタスクが完了していることを確認する方法について、少し混乱しています。
それで、私の質問 - アプリをスムーズに実行し続けるために、上記のタスクの一部またはすべてを他のスレッドにオフロードするには、どこで (そしてどのように) 行くのでしょうか? また、メインスレッドが次のタスクを完了できるように、オフロードされたタスクが完了したことを確認するにはどうすればよいですか? 前もって感謝します。