何时使用后值[重复]

2023-12-30

在下面的一段代码中:

    viewModelScope.launch {
  
        isLoading.postValue(true) 
            
        .....
   }

我们在主线程中,因为viewModelScope.launch默认在主线程上运行,与viewModelScope.launch(dispatchers.main)

在主线程中,使用 postValue 有意义吗?我的意思是,不应该是这样的:isLoading.value = true ?

我在互联网上发现了很多这样的代码块,是对还是错?


根据文档:

根据文档:

设定值():

设置值。如果有活跃的观察者,该值将为 派遣给他们。该方法必须从主线程调用。

后值():

将任务发布到主线程以设置给定值。如果你打电话 在主线程执行发布之前多次使用此方法 任务时,只会调度最后一个值。

因此,如果可能的话,我总是会使用 setValue,在您的情况下,因为您已经注意到 setValue 更好,因为您可以确定它始终位于主线程上。

然而,postValue 也可以从主线程调用,但性能会稍差一些。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

何时使用后值[重复] 的相关文章

  • React Native 检查平板电脑或屏幕是否以英寸为单位

    我为平板电脑和移动设备建立了不同的渲染逻辑 我想知道是否有办法获取屏幕尺寸 以英寸为单位 或者甚至可能是任何模块自动检测设备是否是平板电脑 我没有直接使用尺寸 API 来获取屏幕分辨率的原因是 许多 Android 平板电脑的分辨率低于许多
  • 按大小、日期、名称等在回收器视图中排序并记住选择

    我正在制作图库应用程序 我想为其添加排序功能 我可以使用以下命令在运行时对项目进行排序Comparator但问题是 每当我退出应用程序时 列表都会再次从数据库中出来 并且所有列表都未排序 我想在我的应用程序中提供按日期 大小 名称等排序的选
  • Android P Beta - AlarmManager 通知不起作用

    我正在 Android P beta 版本 4 上测试我的应用程序 我的应用程序目标SdkVersion是27 据观察 警报管理器通知未按预期工作 我使用下面的代码来设置通知 if android os Build VERSION SDK
  • 如何让Service即使被系统杀死也无法删除?

    我正在创建一个蓝光过滤器应用程序 因此 我想显示所有应用程序的视图 我通过以下服务做到了 public class OverlayService extends Service public OverlayService View mVie
  • 如何创建适用于 iPhone、iPad 和 Android 的 Extjs 应用程序?

    有人成功创建了适用于 iPhone iPad 和 Android 的 Extjs 应用程序吗 我知道 Sencha 不支持移动设备上的 Extjs 但我不想创建另一个仅针对移动设备的网站 我不需要奇特的移动界面 只需要基本的功能 我做了一些
  • 未安装 newrelic 的应用程序上出现 NoClassDefFoundError

    我已经使用他们的 Eclipse 指南为我的 Android 应用程序安装了 newrelic 它在该应用程序上运行正常 现在 如果我创建一个简单的 hello world 项目 我将收到 NoClassDefFoundError 我该如何
  • Android TableRow 垂直拉伸以填充屏幕

    我正在尝试创建一个电话拨号器视图 使用 TableLayout 在 3x4 网格中创建 12 个按钮 我希望行垂直拉伸以平等地使用所有可用空间 但似乎 fill parent 在 TableRows 上不起作用 我不想使用 setMinim
  • Android:从 https url 获取响应

    问候 我正在开发一个 Android 应用程序 需要通过 https 打开一个 url 带有 POST 参数 并获取响应 我有一个自签名证书 这让情况更加复杂 我还需要接受cookies 有人知道从哪里开始吗 提前谢谢了 Android 附
  • 通过 id 查找 视图?

    如果视图是 id 是否可以通过 id 查找视图
  • 安卓市场。 Google Checkout 和银行帐户

    请原谅 这不是一个编程问题 但它仍然与软件开发有关 所以我希望它没问题 为付费应用创建 Android 开发者帐户意味着注册一个 GoogleCheckout 帐户 这又意味着将其链接到来自这 31 个符合条件的国家 地区之一的银行帐户 有
  • android:widgetLayout 和 android:layout 之间的区别?

    我得到一些奇怪的配置 其中 widgetLayout 配置列表项的内部空间 而布局配置整个项目列表和屏幕背景 有人能真正解释一下什么是 widgetLayout 吗 android layout 整个首选项的布局 包括标题 摘要和小部件 a
  • 将样式应用于警报对话框

    我决定尝试材质警报dialogs https material io develop android components dialog 在安卓上 我遇到的问题是当我尝试应用某些样式时 检查文档 我发现了这个
  • Android 设备 ID(不是 IMEI)

    我使用命令 adb devices 列出连接的设备 在我的电脑上我得到 附加设备列表 HT9CTP820988 器件 我的问题是 如何以编程方式获取此 id HT9CTP820988 你所看到的adb devices命令是序列号 序列号 创
  • Android Lollipop BLE 扫描 - 获取没有重复的外设

    Android Lollipop 引入了一种扫描 BLE 外设的新方法 通过蓝牙扫描仪 http developer android com reference android bluetooth le BluetoothLeScanner
  • 在 Android 版 Glide 中离线时加载已获取的图像

    我正在使用 Glide 版本 4 8 0 为了加载图像我这样做 GlideApp with HomePageFragment this load remoteURL diskCacheStrategy DiskCacheStrategy A
  • 如何在高速缓存中存储图像

    我对此完全空白 我想从 URL 下载图像 并且必须将其存储在内部 以便下次我不需要连接到网络 而是从缓存中检索它 但我不知道该怎么做 谁能帮我提供一个代码片段 import java io BufferedInputStream impor
  • ProGuard 与 Android:java.lang.NoSuchMethodError:android.util.Xml.asAttributeSet

    当 ProGuard 被禁用时 我的应用程序运行正常 启用ProGuard后 应用程序将导出为apk并安装到模拟器中 然后当我在模拟器中运行它时 强制关闭 05 10 11 14 10 582 E AndroidRuntime 759 FA
  • Kotlin 中是否有类似于 #region #endregion 的语法?

    我知道我可以使用 region endregion 包围 C 中的代码片段 Kotlin 中是否有类似的语法 谢谢 region MyRegion protected void Page Load object sender EventAr
  • Android同步onSensorChanged?

    这是我的问题的后续 Android线程可运行性能 https stackoverflow com questions 36395440 android thread runnable performance 我在理解应用程序的同步方法时遇到
  • 如何自动更新Android Studio?

    我需要将 Android Studio 更新到 0 9 9 版本 但是当我按 下载 在更新信息对话框上 时 它会将我发送到此处 http developer android com sdk index html http developer

随机推荐

  • 如何转义 URL 中的哈希字符

    我怎样才能逃脱 URL 的查询字符串中发送的哈希符号 有时称为数字符号或井号 百分比编码 https en wikipedia org wiki Percent encoding 将哈希替换为 23
  • libsandbox 和 pysandbox 的限制功能

    我正在使用sample2 py此处列出https github com openjudge sandbox https github com openjudge sandbox作为调用沙箱库的包装器 又名 libsandbox pysand
  • 如何使用 R Shiny 从数据库填充下拉列表?

    我想用数据库查询的结果填充 R 闪亮应用程序中的下拉列表 I have a global r file where i put this code getData lt function this function returns a si
  • 停止 Android Studio 使用支持库

    我试图让 Android Studio 中的 Android 项目不使用支持库 我的问题是 当我使用片段时 它需要支持片段并导致应用程序崩溃 我的 Min SDK 是 14 我的 Target SDK 是 19 我的理解是 因为我的目标是这
  • Flask + Flask-Security + Babel 不工作

    我已经设置了 Flask Babel Flask Security 像这样创建所有翻译 root main py translations ru LC MESSAGES 消息 mo 消息 po 在 main py 中 有一部分设置语言执行
  • Struts2:全局结果配置错误

    我想使用全局结果 登录 但它仅在配置中没有全局结果的情况下才有效 这是我的配置的相关部分 类别列表 jsp 类别详细信息 jsp WEB INF login jsp 当我启动我的应用程序时 它会抛出此异常 org xml sax SAXPa
  • 如何将文本文件包含到JavaScript中

    有没有办法将另一个文件中的一些文本加载到 javascript 中 而不需要服务器端代码 我正在考虑使用另一个元素来保存一些注释中的文本 但我不知道如何使用 javascript 读取它的源代码 就像是 在 myfile js 中 some
  • 重载 << 运算符 C++ - 指向类的指针

    class logger logger operator lt lt logger log const std string str cout lt lt My Log lt lt str lt lt endl return log log
  • iOS 中的 Amazon S3 POST 上传

    我有一个服务器 它生成 AWSAccessKeyID acl 策略 签名等参数 用于使用 POST 将文件上传到 S3 如下所示 http doc s3 amazonaws com proposals post html http doc
  • 如何在 .NET 4.0 的实体框架中进行“like”通配符比较?

    我正在使用 Visual Studio 2010 RC for NET 4 0 我试图弄清楚如何与实体框架进行通配符比较 我想要对 EF 进行以下查询 在其中找到所有以 J 开头的名称 select from Users where Fir
  • Cloud Dataflow - 增加 JVM Xmx 值

    我们正在尝试在云中运行 Google Cloud Dataflow 作业 但我们不断收到 java lang OutOfMemoryError Java 堆空间 我们正在尝试处理 Big Query 表中的 6 1 亿条记录 并将处理后的记
  • Mapbox fitbounds() - 无效的 LngLat 对象:(NaN, NaN)

    在过去的几个小时里 我一直用头撞桌子 我试图让 Mapbox 放大所有标记的边界区域的负载 但是 这是我在下面的代码中遇到的错误 此错误出现在下面的控制台日志图像之后 因此 lat lng 坐标肯定存在 未捕获的错误 无效的 LngLat
  • 如果仓库自动查看自述文件,自述文件中的相对链接就会损坏

    我有一个仓库作为 github 上组织的一部分 例如 MYORGANIZATION MyRepository 该存储库包含一个 README md 文件 在此 README md 文件中 我有一个链接 因此另一个 md 文件位于与 READ
  • Xampp-mysql - “引擎中不存在表”#1932

    移动 xampp 文件夹后出现 Xampp 错误 Apache 运行良好 如下图所示 我成功运行 apache 但无法运行 mysql 如果我移动并运行 xampp apache 和 mysql 但它显示的错误是新鲜的 并且显示类似 引擎中
  • 将 exec-maven-plugin 的输出分配给变量

    我想使用 exec maven plugin 来获取 git revision 所以我使用以下配置
  • 用于执行 python 脚本的 Vim 键映射

    我第一次尝试在 Vim 中映射命令 我希望它执行当前的 python 脚本 所以我将以下内容放入我的 vimrc noremap
  • 添加 $ 并舍入小数点后 2 位 SQL

    我正在寻找格式化由子查询创建的输出 该子查询生成一个计算字段 我希望将其格式化为 XX XX 子查询 select avg retail from cars where brand FORD or brand TOYOTA as AVG B
  • 使用 ICC 配置文件将 RGB 转换为 CMYK

    我即将将 RGB 颜色转换为 CMYK 以便打印 此转换的规模是 Adob e Photoshop Image gt Mode gt CMYK color 我尝试了 2 个解决方案 但没有一个返回正确的值 解决方案 1 使用 NET Fra
  • webpack --watch 不编译更改的文件

    我尝试跑步webpack watch编辑我的 JS 文件后 它不会触发自动重新编译 我尝试过重新安装webpack using npm uninstall但它仍然不起作用 有任何想法吗 如果您的代码没有被重新编译 请尝试增加观察者的数量 在
  • 何时使用后值[重复]

    这个问题在这里已经有答案了 在下面的一段代码中 viewModelScope launch isLoading postValue true 我们在主线程中 因为viewModelScope launch默认在主线程上运行 与viewMod