小知识点

compositeSubscription作用: 

使用时将请求add进来,可以根据生命周期解绑,防止泄露

SharePreference的apply与commit区别: 

commit在写入磁盘成功后返回true,apply在写入磁盘时就返回(可能没写进去),apply异步,commit覆盖式。

SharePreference使用注意项:

  1. 不要存超大的value          sp在创建时会把整个文件全部加载进内存    ,   第一次取值时可能界面卡顿,因为里面的getString方法有锁, 执行完getString才会执行其他操作,getString则等待sp的加载。最终还是sp加载时影响,因此可在加载sp与取值之间做其他操作,节省等待时间,getSharedPreference的时候会把所有的sp放到一个静态变量里面缓存起来,程序中使用到的那些sp永远在内存中。
  2. 不要多次apply            虽然是异步的,但是每一次apply会被加入到一个队列中,这个队列则在一个单线程的线程池中执行,会最终导致卡界面。
  3. 不要跨进程
  4. 读取频繁和不易变动的key不要放一起
原文地址:https://www.cnblogs.com/acg88688/p/11870555.html