2012-02-16 11 views
1

NSOperationについて知りながら、なぜ完成ブロックがNSOperationのサブクラス化されたメソッドへのコールバックに対して利点があるのか​​疑問に思った。ブロックを使用してコードをより密接に結びつける方法を理解しています。複数のオブジェクトからコールバックを処理するデリゲートメソッドを使用するのとは対照的に、この方法で自分自身を使用しました。NSOperationクラスのコールバック関数を使用した完了ブロックの利点

NSOperationの場合、操作全体がクラスと私のサブクラス内に含まれています。それは単一の操作を包含し、すべての方法はその単一の操作に焦点を当てている。この場合、完成ブロックが何を提供しなければならないのか分かりません。私の理解に欠けているものは何ですか?

答えて

5

主なポイントは、ブロックが作成スコープのローカル変数をキャプチャできることです。コールバック関数を使用すると、コンテキスト構造またはオブジェクトを明示的に渡す必要があります。完了ブロックはよりスムーズで、より「自動」なやり方でこれを行うことができます。

関連する問題