带有singleInstance launchMode和一个新线程的Activity



我真的有点困惑。当它说

的活动singleInstance launchmode使用单例模式,该实例将成为新任务的根活动

当它说新任务,这是否意味着启动活动将在一个新的线程中执行?或者android系统只是使用标志主线程

中的数据结构内部控制活动导航

Activities with singleInstance launchmode使用singleton模式

这是误导。活动,无论启动模式是什么,都不应该把视为单例。确实,当使用singleInstance时,只有一个Activity实例,但是正常的Activity生命周期仍然发生,并且保持对任何Activity的静态引用是不安全的。

当它说新任务时,是否意味着启动活动将在新线程中执行?

不,所有的activity都在主线程中,你应该只在主线程中与它们交互。这种混淆来自单词task的使用,它在本例中并不是指线程。它指的是一组活动。在官方文档中有关于这个主题的有用参考

是否意味着启动活动将在一个新线程中执行??

不,它没有。

所有的activity(包括service和receiver)都是在一个叫做主线程的线程上执行的。

你可以在这里找到关于Android线程模型的好文章

相关内容

  • 没有找到相关文章

最新更新