Aja*_* Rn 6 dependency-injection stream flutter rxdart bloc
我正在使用inject.dart将我的块作为单例注入,这是一种不好的做法,即会导致内存泄漏吗?
由于我使用的所有流都是来自 RxDart 的广播流,我想知道单例是否会工作得更好?
如果不是不好的做法,那么关闭流的最佳位置是什么?由于其他小部件可能仍在使用流,因此在有状态小部件(订阅 bloc)的 Dispose() 中执行此操作是否会导致问题?
您不应该使用单例,因为它会消耗太多内存。而是将块注册为工厂类。
请参阅此 github 问题 - https://github.com/felangel/bloc/issues/711
如果您在处置块后将它们注册为单例,则无法再次使用该块,但如果您注册为工厂,则可以在void dispose(){...}小部件的方法中处置它。
| 归档时间: |
|
| 查看次数: |
2744 次 |
| 最近记录: |