java - 为什么我们需要在 Rx 中使用compositedisposable 以及之前在普通 java 中使用的是什么?
问题描述
我习惯于使用 java 开发 android 应用程序。
现在我正在学习 Kotlin、Reactivex 和 MVVM。我遇到了一个compositedisposable
概念
据我了解,如果用户离开活动,它有助于取消例如 API 调用。
以前在java中如何处理这种情况?我从来不需要取消 api 调用,为什么它在 rx 中?
解决方案
这不是因为 Kotlin 或 Rx。它是 Java 和任何其他语言或框架中的东西。
假设您有一个长时间运行的异步操作。它是线程、RxJava 还是协程或您使用的任何异步框架都没有关系。当应用程序完成时,您应该取消这个长时间运行的操作(如果您不再需要结果)以释放内存或 CPU 等资源。
在 RxJava 中,您可以使用Disposable
or CompositeDisposable
(它只是Disposable
's 的集合)来取消这些操作。
推荐阅读
- python - 如何在 PyMongo 中打印所有过滤后的元素?
- java - Android for循环等待点击事件计数器然后继续循环
- reactjs - React Router 触发具有历史记录的路由
- c# - EF Core Code-First Migration Cascade删除问题
- node.js - 如何从nodejs子进程中的stderr中提取错误
- android - 带有高级滚动事件的 Flutter webview
- laravel - Laravel 类构造函数必须接受模型集合
- javascript - JS 平滑 setTimeout 类移除
- java - 如何检查字符串是否是base64编码的?
- github - 如何将子文件夹添加到 gitignore 文件?