2022-03-02

热修复

流程

1,用dx命令对class打包
2,双亲委托机制,先看自己缓存有没有,在看上一层classLoader有没有,没有再自己loadclass

qq空间热修复方案

RSS,PSS,USS

主要uss 这个是自己独占的
rss 是全部的
pss 是共享库按比例分配的

okhttp

队列,同步队列,异步进行队列,异步准备队列

同步队列直接进入队列请求
判断是不是 总请求<=64,当前host链接<=5
是的话进入异步进行
否则异步准备

LinkedHashmap

//accessOrder 为true的情况,插入和访问都会放在尾部

  public LinkedHashMap(int initialCapacity,
                       float loadFactor,
                       boolean accessOrder) {
}

public V get(Object key) {
      Node e;
      if ((e = getNode(hash(key), key)) == null)
          return null;
      if (accessOrder)
          afterNodeAccess(e);
      return e.value;
  }

为什么bindService会自动解绑

loadedapk里会记录

 private final ArrayMap> mServices
        = new ArrayMap<>();

为什么io不管会内存泄漏

因为有部分缓存不是在虚拟机里
其实我们写一个输入输出流
在finalize 方法里就进行close,不过这个太忙了

fragment 只销毁view,不销毁自己,类似FramentPageAdapter


       mFragmentManager.beginTransaction().detach(fragment);

计算bitmap大小

1字节= 8比特
rgb888 各占1字节,总共3字节

bitmap

//bitmap 复用换成新的图片以后
bitmap.getAllocationByteCount();//总共大小
bitmap.getByteCount();//新的图片所占用的大小

你可能感兴趣的:(2022-03-02)