android,LiveData会带来多少开销

问题描述 投票:0回答:1

有关使用LiveData的问题。

使用LiveData,您可以免费获得类似的东西:

listener/subscriber support; 
lifeCycle awareness/management; 
cross thread marshaling, etc.

几乎在任何情况下,我们都可以使用liveData作为在任何数据存储库到ui表示之间进行传递的机制。

但是,为了使用它,它必须引入一些所需的对象,就像您自己实现这些功能一样,必须要实现一些支持类。

想知道这可能是多少/多大的开销?难道只是被忽略了吗?

类似于进行搜索的情况,它可以使用LiveData,ui从存储库询问结果并观察liveData,存储库发布结果,并通知UI。

也可以在不使用liveData的情况下执行相同的操作(即,运行协程暂停函数以直接从存储库中获取)。

想知道LiveData是否会带来一些不必要的对象,或者带来的好处。

看到some post,但未找到何时应该使用LiveData或不使用LiveData的官方指南,或者LiveData不适合此类情况。也许根本就没有开销?

任何建议/想法?

android android-livedata
1个回答
0
投票

[使用MVVM(模型视图ViewModel)时,有两个主要选项可将数据从ViewModel发送到视图(更新视图)。

  • 数据绑定
  • LiveData

如果您不想使XML布局复杂化,我们通常会使用基于Observer Design Pattern的LiveData。使用Kotlin Coroutines不会带来功能齐全的LiveData软件包。使用LiveData,您可以从另一个线程到主线程获得postValue,您可以从视图内部观察更改,然后...

© www.soinside.com 2019 - 2024. All rights reserved.