1

ObjC コントローラー オブジェクトがあります。

オブジェクトの alloc/init の後、非同期でジョブを実行するようにします。

[myObject doSomeThingsOverTime];

メソッドは物事を動かし、すぐに戻ります。

質問: myObject を解放して完了した作業に対応できるように、将来結果を通知するにはどのような方法が最適ですか? 通知を監視/投稿する必要がありますか? または、コールバックするメソッドをオブジェクトに提供しますか? それとも他の?

4

2 に答える 2

2

私は個人的に通知センター ルートのファンです。複数のオブザーバーを許可します(あなたに関連する場合と関連しない場合があります)。

デリゲート ルートも有効で、フレームワークで頻繁に使用されます。

個人の好みによるところが大きいと思います。それが独自のコードである場合は、特定の状況で最も読みやすくシンプルなものを使用する必要があります。どちらかが多かれ少なかれ有効であるとは思いません。

于 2009-06-12T06:22:45.790 に答える
1

NSOperation および NSOperationQueue クラスを見たことがありますか? NSOperation オブジェクトの isFinished を監視できるため、完了時に通知を受け取ることができます。

于 2009-06-12T09:26:10.483 に答える