Java 完成活动是否会销毁从该活动创建的线程?

Java 完成活动是否会销毁从该活动创建的线程?,java,android,multithreading,android-activity,Java,Android,Multithreading,Android Activity,我正在开发一个android应用程序,当它第一次启动时,它会将一些数据库从应用程序复制到设备的内部存储。因为完成任务需要几秒钟,所以我决定在后台线程上运行它。当主活动打开时,线程开始并继续它的工作。 我的问题是:如果用户在后台任务完成之前关闭活动,后台线程还会运行吗?或者线程也将被终止?Android中的线程 在Android中,您可以将所有线程组件分为两个基本类别: 附加到活动/片段的线程: 这些线程与活动/片段的生命周期相关联,并在活动/片段销毁后立即终止。 未附加到任何活动/片段的线程:

我正在开发一个android应用程序,当它第一次启动时,它会将一些数据库从应用程序复制到设备的内部存储。因为完成任务需要几秒钟,所以我决定在后台线程上运行它。当主活动打开时,线程开始并继续它的工作。 我的问题是:如果用户在后台任务完成之前关闭活动,后台线程还会运行吗?或者线程也将被终止?

Android中的线程 在Android中,您可以将所有线程组件分为两个基本类别:

附加到活动/片段的线程: 这些线程与活动/片段的生命周期相关联,并在活动/片段销毁后立即终止。
未附加到任何活动/片段的线程: 这些线程可以在生成它们的活动/片段(如果有)的生存期之后继续运行。

因此,就您的问题而言,当
活动
完成时,从活动创建的所有线程也会被销毁。希望这能回答你的问题
有关更多信息,请参阅此。我认为您应该选择
JobIntentService
,因为它能够在完成工作后自动停止