关于内存泄漏的一些小常识
来源:互联网 发布:金山卫士 源码 编辑:程序博客网 时间:2024/05/17 05:53
1.Context、Activity、Fragment等造成内存泄漏
如Toast,或其他一些方法,传入页面的context,activity,fragment对象,页面结束,Toast却仍旧在对其进行引用,自然无法内存回收
解决方法,页面结束后仍旧会占用context的,传入ApplicationContext,
而有些线程类的引用,无法确定其时间,则一定要使用WeakReference
举例需要用弱引用(WeakReference)引用Context
WeakReference<Context> wr = new WeakReference<>(context) ;
使用,则
Context context = wr.get();
即可实现
2.Bitmap造成内存泄漏
使用结束,一定要手动调用对象回收方法,recycle() 或置null
3.静态变量造成内存泄漏
若页面中存在静态变量,被其他页面使用中退出,则该页面也会造成内存泄漏
解决方法:
拥有静态成员的ondestory中,把静态变量置空
最后,一个强壮应用背后应该又一个leakcanary
0 0
- 关于内存泄漏的一些小常识
- 关于沥青路面的一些小常识
- 内存泄漏检查的常识
- 关于内存泄漏检测的一些方法
- 关于造成内存泄漏的一些原因
- Android 关于内存泄漏的一些总结
- Android中关于TextView的一些小常识
- 一些路径的小常识
- IE的一些小常识
- 硬件的一些小常识
- java的一些小常识
- 一些基本的小常识
- html5的一些小常识
- 关于内存泄漏的一些知识概括和记录
- 关于目录的小常识
- 关于html的一些常识
- 关于Redis的一些常识
- 关于金融的一些常识
- 编写简单shell
- logback日志系统---logback.xml文件手动配置
- CUDA系列学习(二)CUDA memory & variables
- 深入理解DM8168中的线程通信
- 分析支付宝客户端的插件机制
- 关于内存泄漏的一些小常识
- 游戏跨服架构进化之路
- tensorflow 分类问题
- PgSQL · 特性分析 · PostgreSQL Aurora方案与DEMO
- recycleview多item布局的实现(简单聊天界面)
- 最精简的XML格式与数组的互相转换
- 设备和模块的分类
- javascript面向对象
- del node