当前位置:首页 > 云计算 > 正文

云计算lifecycle怎么做


一、AndroidLifeCycle使用以及应用分析

在我最近写的项目中,始终贯穿整个事件流的组件可以是LifeCycle,在我眼中,它就像一个广义的UI生命周期管理器对象,它可以向所有向其注册的方法发送生命周期事件,然后由您决定是否要治疗他们。

那么问题来了,这不正是接口+观察者模式所能达到的效果吗?然后看起来就没有原来那么酷了。

话不多说,我们先来说一下使用场景

示例1来自我们经典的向日葵

你可能会特别困惑,别担心,我们来看看直接去lifecycleScope看看

上面是LifeCycle的生命周期管理(google一下,为什么不早点做?这让我想起了被生命周期支配的恐惧)

示例2:来自我自己的项目

首先解释一下,当Android与RxJava+RxAndroid一起使用时,内存泄漏是一个很常见的问题,因为异步任务本身不会理解你的视图的生命周期。我在自己的项目中使用autoDispose

三方框架实现RxJava和RxAndroid任务与LifeCycle的绑定

以上就是。LifeCycle的两个非常简单的实际应用下面我们来分析一下。生命周期有什么作用?

我们通过AppCompatActivity找到它的父类,FragmentActivity、ComponentActivity的父类

看图倒着讲pass就是从RESUMED到DESTROYED的过程,只能改一次一次,是一个连续的动作

forwardPass是从INITIALIZED到RESUMED的过程,也只能一次改变一次,是一个连续的动作。

此时出现问题,你为什么要这样做?而嵌套判断是如何解决同步过程中新观察者加入的问题

这个可以缩小到两个小点

同步过程中添加了新的观察者

在同步过程中,添加了新的状态变化

这里再次显示pushParentState和popParentState。这个栈是做什么用的?

为了保证新的状态不会破坏整个地图的秩序

此时你会觉得奇怪吧?哪个顺序

如果你仔细观察sync,你就会明白,sync的评估取决于新添加的订阅者的状态肯定比之前添加的订阅者更新

这应该是考虑牺牲一部分操作来保证性能有序

上面是生命周期中状态变化的大致流程。生命周期长似乎没有太大问题。说到周期管理的问题,看来基于业务的开发将是未来的主流。