我有以下情况: - 具有大量项目的应用程序。(1mil+) - 在列表中的每一项上都有一个可观察的。
如果我从应用程序初始化创建可观察对象,应用程序将冻结,因为它需要大量处理和内存。解决方案是按需创建它们,因为项目将一次部分呈现。这很容易做到。
我需要的是,在我取消绑定项目后,显示一个新批次,销毁已创建但不再使用的可观察对象。
一种解决方案是,当我切换到新批次时,遍历旧批次并销毁。这也很容易做到,但不幸的是还不够。
我的应用程序分为多个组件,每个组件可能使用或不使用主项目池中的项目。这意味着我不能只搜索之前解绑的项目并销毁可观察对象,而是必须搜索所有组件。从性能的角度来看,这并不好,也不好,因为组件不需要相互了解。
所以我的问题是。一旦没有更多订阅者,在淘汰赛中是否有任何方法(内置或不内置)来销毁可观察对象?
谢谢你。