2016-03-26 8 views

答えて

1

ガベージコレクションはJavaの通常のルールに従います。ハードリファレンスがある場合は永遠に保持されます。つまり、オブザーバブルがフィールドに割り当てられている場合、そのオブザーバブルはガベージコレクションの対象になりません。これがreplay()演算子の結果である場合、またはreplay()演算子がその上流にある場合、replay()演算子のすべてのデータもメモリに保持されます。

タイムアウトまたはカウントのいずれかでメモリ内に保持される参照オブジェクトを制限するのに役立つバリアントがreplayあります。

また、観測対象自体にSoftReferenceを使用することもできます。

+0

さらに検索すると、このトピックの参照の説明がほとんど見つかります。通常のワークフローと比較して、追加のメモリを使用するRxスタイルの量はいくらですか?カウント可能なObservableの使用量の量子化は、マップなどの操作を含んでいますか?アドバイスありがとうございます。 – LoranceChen

関連する問題