首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >非同步任务与Daemons的区别

非同步任务与Daemons的区别
EN

Stack Overflow用户
提问于 2016-01-17 21:40:26
回答 2查看 610关注 0票数 2

在这个问题中:Android: AsyncTask vs Service,有人回答了

服务是一个守护进程,AsynkTask是后台线程。

对此,有人回答说:

服务不是守护进程,因为它没有自己的执行线程。

问:由于这两种程序都使用线程操作,并且在后台工作,除了每个进程的生存期之外,AsynctasksDaemon进程之间的关键区别是什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-01-17 22:12:38

我在任何地方都没有见过带有服务或AsyncTask的守护进程。对我来说,Daemon线程是来自java的线程,它允许JVM即使使用未完成的线程也可以完成任务。就Android而言,你无法控制你的应用程序进程--你最多可能会扼杀它。

Android服务是一个组件--这使它接近活动组件。什么意思?它是由系统管理的--它具有生命周期方法被调用的生命周期。可以将服务配置为重新创建,也可以使其成为前台(这样,系统就不太可能杀死它)。因为它是一个组件,所以可以将它配置为在单独的进程下运行。默认情况下,它没有自己的执行线程--它运行在UI线程上。

现在AsyncTask是完全不同的东西,它不是一个组件,所以您不能从上面做任何事情。它有一件事是后台工作线程。实际上,AsyncTask是一个带有一些生命周期方法的Exeuctors线程池的包装器--比如onPreExecute、onPostExecute、.不应该把它比作服务,而应该把它比作装载机。

票数 2
EN

Stack Overflow用户

发布于 2016-01-17 21:59:02

按: http://www.linux.org/threads/android-services-and-daemons.7143/

服务:

“服务”是在背景下运行的特殊软件,就像GNU/Linux上的守护进程。服务没有GUI。“已启动服务”在后台运行,直到它完成任务、崩溃或被用户或应用程序显式关闭为止。“绑定服务”一直存在,直到没有更多的应用程序被附加或绑定到服务。

AsyncTasks:

AsyncTasks是为用户界面线程不能运行的一次性耗时任务而设计的。一个常见的例子是按下按钮时获取/处理数据。

守护进程:

“守护进程”是在后台*中运行的进程,而不拥有服务通常是守护进程,而守护进程通常被认为是服务。然而,服务和守护进程之间的确切区别是模糊的。一般来说,它们可以被视为同一个实体。但是,有些人使用“守护进程”来指一段软件,使用“服务”来指守护进程.提供的操作和API。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34844046

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档