OOM 一般需要注意的地方

  • 加载大数据,分部处理大数据,防止一次性加载。
  • 及时释放内存,防止内存泄漏;在生命周期短的对象引用生命周期长的对象,多使用WeakReference 弱引用在引用对象。
  • 尽量避免使用递归算法,防止方法栈的OOM;如果有循环递归的情况,尽量复用临时变量。
  • 也需要避免在释放内存过于频繁导致的内存抖动,尤其是在数组作为缓冲的时候,这里可以参考Okhttp里面使用的Buffer使用。

你可能感兴趣的:(OOM 一般需要注意的地方)