Java 后台服务线程

Java 后台服务线程,java,android,multithreading,service,background,Java,Android,Multithreading,Service,Background,我已经开始了后台服务。 我知道这是在主线程上启动的,因此我在后台类中创建了新的thread/runnable 我似乎花了很多时间来管理如何防止线程和后台服务继续进行,这让我相信使用Intent服务并在主活动的指定计时器间隔运行它可能会更好。 后台服务当前每10秒执行一次网络操作,然后进入休眠状态。 它还使用广播意图向任何收听活动发送信息 我的问题是:当我杀死后台服务时(通过stopSelf();或者如果我使用绑定服务的“unbind”命令,这是否也会杀死创建的线程而不显式调用thread.int

我已经开始了后台服务。 我知道这是在主线程上启动的,因此我在后台类中创建了新的thread/runnable

我似乎花了很多时间来管理如何防止线程和后台服务继续进行,这让我相信使用Intent服务并在主活动的指定计时器间隔运行它可能会更好。 后台服务当前每10秒执行一次网络操作,然后进入休眠状态。 它还使用广播意图向任何收听活动发送信息

我的问题是:当我杀死后台服务时(通过stopSelf();或者如果我使用绑定服务的“unbind”命令,这是否也会杀死创建的线程而不显式调用thread.interrupt?
这是一种有效的利用后台服务的方式吗?考虑到线程的额外需求?

是的,如果你想启动服务,那么应该使用IntentService,然后在它停止后停止服务,以获得答复-这是否意味着我必须使用某种计时器来触发此意图。我的问题是,我希望它在两次活动之间工作如果我在计时器未过期时终止第一个活动,它是否仍会在计时器过期后触发意图?这将引导我返回后台服务,因为我希望它在活动之间保持持久性,但在它终止/退出/关闭应用程序时终止。是的,如果你想启动,那么应该使用IntentService,然后在我退出后停止服务ts donethanks回答-这是否意味着我必须使用某种计时器来触发此意图。我的问题是,我希望它在活动之间工作,如果我在计时器未过期时杀死第一个活动,它在过期后是否仍会触发此意图?这将引导我返回后台服务,因为我希望它是持久的b活动之间,但在应用程序终止/退出/关闭时终止。