ZKX's LAB

android服务和进程的区别 android 服务 进程

2021-04-24知识4

android系统中,“进程”和“服务”哪个对系统运行内存消耗比较大? 到底进程还是服务消耗内存大,取决于具体的程序,也取决于程序的运行状态安卓中的进程是前台程序,也就是通常看到的软件界面和软件本身,进程不能在后台执行,当一个进程转入后台时,自动休眠,内存占用量很低安卓中的服务是后台程序,提供提供对应用程序处于后台时继续运行的条件,因为安卓系统规定进程不允许后台运行,转入后台的进程都一律进入休眠模式,不再占用CPU,所以对于一些希望后台还能继续执行的程序,就会带有服务所有程序都对应一个或多个进程,但不是所有程序都有服务,服务只针对那些需要后台继续运行的程序提供必要的环境,例如杀毒软件、通讯软件、流量监控软件等等服务一般来说内存占用都是恒定的,波动不会很大,而进程则不一定,例如一些安卓网络游戏的进程内存占用可以达到上百M,转入休眠后可能只有几M甚至几百K,但它们的服务程序可能只消耗几M的内存,而对于杀毒软件这类需要强大后台支撑的,其进程可能只占用几M内存,而后台服务却可能占用几十M之多因此进程和服务谁占用内存大没有一个固定标准,与具体程序有关PS:纯手打,如有问题欢迎追问

android 推送服务为什么要独立进程 “进程”?你应该是指在android中的“线程”吧,主线程是UI线程,不能阻塞。所以不建议放到主线程。既然不是主线程,那就要另启独立线程咯。如果不是,请勿喷~

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

随机阅读

qrcode
访问手机版