假设我在清单中注册了一个 BroadcastReceiver,并且我的应用程序未处于活动状态。因此将产生新进程,并且将在这个新进程的主线程上触发 BroadcastReceiver 的 onReceive() 方法。
现在,我从 onReceive() 方法生成一个线程(我知道不建议这样做,并且应该使用 Service 来延长 onReceive() 之后的进程生命周期)。
我很好奇生成的线程(让我们假设它无限期地运行)会使进程保持活力吗?应该考虑 JVM,因为 JVM 在有活动的非守护线程之前不会退出。那么艺术呢?ART 不是 JVM,它是一个编译器,编译后的应用程序的行为可能会有所不同,例如杀死进程并因此杀死所有线程,无论它们是否仍在运行。有人对这种情况有见解吗?