gpt4 book ai didi

android - Android 中 startActivityForResult() 背后的机制是什么?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:01:12 26 4
gpt4 key购买 nike

我有一个 Activity 。在此 Activity 中,我想使用 startActivityForResult() 开始另一个 Activity 。我了解我的基本 Activity 是在具有主 GUI 线程的进程中启动的。但据我所知, startActivityForResult() 是异步的,这意味着我的新 Activity 将在不同的线程中执行。我找不到有关内部线程的信息。如果只有一个 GUI 线程,这些函数如何异步工作?

最佳答案

But as far as I understand, startActivityForResult() is asynchronious which means that my new activity will be executed in a different thread.

startActivityForResult() 是异步的。这并不意味着您的新 Activity 将在不同的线程中执行。如果新 Activity 是您自己的应用程序的一部分,它将在主应用程序线程上运行,就像您的所有其他 Activity 一样。

If there is only one GUI thread, how does these functions work asynchroniously ?

startActivityForResult()startActivity() 一样,不会立即执行任何操作。相反,它将消息放入消息队列,然后返回。当您将控制权交还给 Android 时(例如,您的 onClick() 方法结束),Android 会返回处理该队列中的消息。当它收到您的开始 Activity 消息时,它会启动新 Activity 。

关于android - Android 中 startActivityForResult() 背后的机制是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3489164/

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