Android:在应用程序范围外的单独线程中运行任务
我试图在android中使用线程池执行器(最大线程大小为5)在单独的线程中执行特定任务,确保一次可以运行五个并行任务。但这种方法的问题是,当我关闭应用程序时,线程也将被终止。我希望这个超出应用范围。Android:在应用程序范围外的单独线程中运行任务,android,threadpool,remote-process,Android,Threadpool,Remote Process,我试图在android中使用线程池执行器(最大线程大小为5)在单独的线程中执行特定任务,确保一次可以运行五个并行任务。但这种方法的问题是,当我关闭应用程序时,线程也将被终止。我希望这个超出应用范围。 我本可以选择为AIDL服务的。但问题是,我需要继续绑定和解除绑定到服务,并且需要在发送对象之前打包对象。当任务完成时,我还需要与调用应用程序通信。这是我如何通过广播实现的。我想知道我是否可以让一个线程在一个单独的进程中运行,或者我只需要使用AIDL?请帮我理解 服务听起来像是您想要的(因为即使应用程
我本可以选择为AIDL服务的。但问题是,我需要继续绑定和解除绑定到服务,并且需要在发送对象之前打包对象。当任务完成时,我还需要与调用应用程序通信。这是我如何通过广播实现的。我想知道我是否可以让一个线程在一个单独的进程中运行,或者我只需要使用AIDL?请帮我理解 服务听起来像是您想要的(因为即使应用程序离开,它也可以继续运行)。AIDL的东西更让人痛苦,但这正是你需要做的,才能获得你想要的行为。根据定义,线程是应用程序的一部分。然后,不可能在应用程序外有线程 当你的应用程序既不创建也不使用新线程时,你运行的是一个主线程,它使用操作系统分配给应用程序的全部CPU时间 因此,您可以选择: 1) 让你的应用程序在后台运行并连接到它 2) 使用服务方式
希望这有助于您理解。感谢BTC来源。我很清楚,我想如果我能让一个线程在一个单独的进程中运行,而不是在一个被调用的进程中运行,那么这项工作就完成了。但在这方面我几乎一无所知。谢谢你消除我的疑虑!只是想提供一些关于它的参考:。在这里,您可以了解应用程序是如何基于活动的。我可以把服务文档放进去,但你似乎已经很了解了;)