zoukankan      html  css  js  c++  java
  • Android--LowMemoryKiller知识点补充

    Android在内存管理上与linux有些小的区别。其中一个就是引入了Low memory killer .

        1、引入原因:

           Android是一个多任务系统,也就是说可以同时运行多个程序,这个大家应该很熟悉。

           一般来说,启动运行一个程序是有一定的时间开销的,因此为了加快运行速度,当你退出一个程序时,Android并不会立即杀掉它,这样下次再运行该程序时,可以很快的启动。

           随着系统中保留的程序越来越多,内存肯定会出现不足,low memory killer就是在系统内存低于某值时,清除相关的程序,保障系统保持拥有一定数量的空闲内存。

        2、基本原理和重要概念:

           Low memory killer根据两个原则,进程的重要性和释放这个进程可获取的空闲内存数量,来决定释放的进程。

      Android根据进程的重要性分成以下几类,按照重要性依次降低的顺序:

    名称     

     oom_adj 

    解释

    FOREGROUD_APP 

    0

    前台程序,可以理解为你正在使用的程序

    VISIBLE_APP

    1

     用户可见的程序

    SECONDARY_SERVER

    2

     后台服务,比如说QQ会在后台运行服务

    HOME_APP  

      HOME,就是主界面

    HIDDEN_APP 

    被隐藏的程序

    CONTENT_PROVIDER 

    14

    内容提供者

    EMPTY_APP  

    15

    空程序,既不提供服务,也不提供内容

  • 相关阅读:
    RecycleView使用心得【2】
    URL解析
    CSS 动画总结
    包含块 width 和 height 值的总结
    JS 获取页面大小
    常见跨域方法原理及其用例
    CSS 计数器
    JS 对象总结
    JS 原型以及原型链
    关于未能找到源文件“.NETFramework,Version=v4.0.AssemblyAttributes.cs”问题
  • 原文地址:https://www.cnblogs.com/wahy/p/5082404.html
Copyright © 2011-2022 走看看