ReactiveCocoaを使用すると、VAC RACReplaySubjectまたはRACMulticastConnectionなど、これらの値を生成する操作を再度トリガーするのではなく、信号から同じ値を受信する2つの方法があるようです。ここRACReplaySubjectとRACMulticastConnectionのどちらを使用するのですか?
がRACReplaySubjectのヘッダドキュメントは、次のとおり
再生対象は、それが送信された値(その定義された容量まで) を保存し、新しい加入者にそれらを再送します。また、 のエラーが再生されます。
そしてRACMulticastConnection用:
マルチキャスト接続は、多くの加入者に 信号に1つのサブスクリプションを共有するというアイデアをカプセル化します。これは、 サブスクリプションのサブスクリプションに副作用が含まれているか、 を1回以上呼び出すべきでない場合に最もよく必要です。
マルチキャストされた信号は、
-[RACMulticastConnection connect]
が呼び出されたときにのみサブスクライブされます。それまでは、 の値はsignal
に送信されません。-[RACMulticastConnection connect]
が自動的に呼び出される方法については、-[RACMulticastConnection autoconnect]
を参照してください。RACMulticastConnectionを手動で作成しないでください。代わりに
-[RACSignal publish]
または-[RACSignal multicast:]
を使用してください。
誰かがあなたがRACReplaySubjectやRACMulticastConnectionを使用するときに同じくらい簡単ガイドラインを提供することはできますか?
優秀、ありがとう! – Poulsbo
RACMulticastConnectionはWebSocketクライアントの "onMessage"ブロックに適していますか?次に、加入者は、異なるデータ型とは何かを適切にフィルタリングできますか? –
@MaxAlexanderそれ以上の詳細がなくても答えられるとは思わないので、別の質問をすることをお勧めします。 –