Android服务中的线程,这是个好主意吗?

Android服务中的线程,这是个好主意吗?,android,multithreading,android-service,Android,Multithreading,Android Service,我想知道在安卓服务中启动线程是否是个好主意 或者最好的做法是使用服务机构并在那里完成您的工作?是的,这是一种很好的做法,您应该在服务机构需要无限期完成某些工作时执行。如果您想执行某个操作,请改用IntentService。 服务也可以绑定到任何其他组件(活动、另一个服务)并同时启动,所以即使应用程序最小化或关闭,您也可以在后台工作。 想象一下,您必须无限期地执行一些长时间运行的操作,并通过UI与这些操作交互。要创建该服务,请启动它并同时绑定到它。您将在绑定期间从ServiceConnection

我想知道在安卓
服务中启动
线程是否是个好主意


或者最好的做法是使用服务机构并在那里完成您的工作?

是的,这是一种很好的做法,您应该在服务机构需要无限期完成某些工作时执行。如果您想执行某个操作,请改用IntentService。 服务也可以绑定到任何其他组件(活动、另一个服务)并同时启动,所以即使应用程序最小化或关闭,您也可以在后台工作。 想象一下,您必须无限期地执行一些长时间运行的操作,并通过UI与这些操作交互。要创建该服务,请启动它并同时绑定到它。您将在绑定期间从ServiceConnection获得用于控制此服务的接口。服务可以同时执行长时间运行操作。这里的要点是,不同的Activitis可以绑定到此服务并以不同的方式表示操作。
另一方面,Intent service在默认情况下运行自己的后台线程,但是,当该线程上的工作完成时,它会自动停止。

第一个问题:没有第二个问题:是的,我会添加在启动它的线程上运行的
service
信息。因此,您可以创建一个线程来启动
服务
,它在独立于
main
的线程上运行。