本文共 501 字,大约阅读时间需要 1 分钟。
每次new Thread新建对象性能差。
线程缺乏统一管理,可能无限制新建线程,相互之间竞争及可能占用过多系统资源导致死机或oom。
缺乏更多功能,如定时执行、定期执行、线程中断。
OutOfMemoryError即OOM的可能原因?
- 数据库的cursor没有及时关闭
- 未关闭InputStream outputStream
- Bitmap 使用后未调用recycle()
- static等关键字
- 非静态内部类持有外部类的引用context泄露
- 流量/数据量峰值:应用程序在设计之初均有用户量和数据量的限制,某一时刻,当用户数量或数据量 突然达到一个峰值,并且这个峰值已经超过了设计之初预期的阈值,那么以前正常的功能将会停止,并 触发java.lang.OutOfMemoryError: Java heap space异常。
- 内存泄漏:特定的编程错误会导致你的应用程序不停的消耗更多的内存,每次使用有内存泄漏风险的功 能就会留下一些不能被回收的对象到堆空间中,随着时间的推移,泄漏的对象会消耗所有的堆空间, 终触发java.lang.OutOfMemoryError: Java heap space错误
转载地址:http://izjki.baihongyu.com/