gpt4 book ai didi

android - 有人可以解释一下 startActivity(intent) 和 startActivityForResult(intent) 是如何异步的吗?

转载 作者:IT老高 更新时间:2023-10-28 23:11:08 29 4
gpt4 key购买 nike

如果异步线程是独立于主线程运行且不干扰主线程的线程...

一个新的Activity通过startActivity(intent)启动后是否不占用主线程?

我读到的大部分内容都说这些都是异步的,但是有相当多的相互矛盾的答案,而且说这句话的人并没有真正给出令人信服的论据。

因此,如果有人对此有清楚的认识并能解释为什么它们是同步/异步的,我将非常感激!

干杯

编辑:所以我从这两个好人和网上的一些东西中得出的答案......

将 Activity 带入同步/异步的混合中可能会导致大量的负载出现。但它仍然是指...的原则。

同步方法/命令必须在调用堆栈继续之前完成。

异步 方法/命令(通常在线程/AsyncTask 中完成)并行继续,允许执行的主线程继续。 (它可以在自己的时间返回)

startActivity(intent)startActivityForResult(intent) 方法是异步的,因为它们是非阻塞的,并且允许执行线程继续执行相应的任务好吧。

最佳答案

startActivity(intent)startActivityForResult(intent) 是异步的,因为这些方法在不启动 Activity 的情况下立即返回。实际上,他们安排一个 Activity 仅在当前 Activity 的生命周期事件完成后启动。

要点是,如果你有一些需要一些时间来完成的东西,在第一个 Activity 的 onPause() 方法中,新的 Activity 会很慢开始。

关于android - 有人可以解释一下 startActivity(intent) 和 startActivityForResult(intent) 是如何异步的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13919201/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com