android服务和进程的区别

如题所述

他们之间的区别:Service很大程度上充当了应用程序后台线程管理器的角色。(如果Activity中新开启一个线程,当该Acitivyt关闭后,该线程依然在工作,但是与开启它的Activity失去联系。也就是说此时的这个线程处于失去管理的状态。但是使用Service,则可以对后台运行的线程有效地管理。)
一个服务不是一个单独的进程。服务对象本身并不意味着它是在自己的进程中运行,除非另有规定,否则它与运行程序是同在一个进程中。
一个服务不是一个单独的线程。Service和其他组件一样,默认情况下,Service中的所有代码都是运行在主线程中。
在android中,为什么不使用后台线程而使用Service? 有3大要点:
1、Service可以放在独立的进程中,所以更安全;

2、使用Service可以依赖现有的binder机制,不需要在应用层面上处理线程同步的繁杂工作;

3、系统可以重新启动异常死去的Service。

说明:进程是由若干线程组成。(线程是进程中的一部分,进程包含多个线程在运行。)
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-07-27
我的理解是是一种包含的关系,手机运行的时候,会产生很多进程,而每个进程具体负责一部分的功能。而服务里面的任务,包含了多条进程。服务的产生更适合管理。
第2个回答  2018-08-14
你是在问服务和线程的关系,还是服务和进程的关系?

我的理解是服务中包含线程,进程是正在运行的线程(进程是线程的一种状态)。

比如说,当你用爱奇艺一边看电影,一边在后台下电影,这就体现出来了。看电影,用到的是线程。而下电影需要用到服务的同时,服务内部还开启了多个线程(下载一般用到多线程,这样速度快)。

这些线程都是在运行中的,所以又把它们称作进程。
第3个回答  2015-10-21
服务是相对比较完善的功能了,而进程只是组成此项功能的一个组成插件或者程序
第4个回答  2015-02-03
android中有ActivityManagerService、WindowManagerService这些服务,这些服务是运行在一个个进程中的,android里面有很多进程,有的进程叫守护进程、有的叫服务、有的叫应用进程,不管他们叫神马,都是进程,只是根据他们的自身特点来叫不同的名字本回答被提问者和网友采纳
相似回答