当前位置: 首页 > news >正文

设计师网站资源网站建设设计有哪些

设计师网站资源,网站建设设计有哪些,友情链接论坛,郑州网站优化排名场景1 Static变量存储上下文环境Context public class ClassName {// 定义1个静态变量private static Context mContext;//... // 引用的是Activity的contextmContext context; // 当Activity需销毁时,由于mContext 静态 & 生命周期 应用程序的生命周期&…

场景1 Static变量存储上下文环境Context

public class ClassName {// 定义1个静态变量private static Context mContext;//...
// 引用的是Activity的contextmContext = context; // 当Activity需销毁时,由于mContext = 静态 & 生命周期 = 应用程序的生命周期,故 Activity无法被回收,从而出现内存泄露}

结论:

被static修饰的变量生命周期==应用的生命周期,所以当前的mContext变量一旦赋值了activity的上下文环境,就会导致在activity需要销毁时,发现还有强引用mContext在持有该activity,所以无法正常回收掉该activity

解决方案
被static修饰的Context在赋值的时候可以把Application的Context赋值给mContext,这时就不会出现内存泄漏。因为应用的上下文和mContext引用的上下文生命周期一致。

场景2 单例模式

public class SingleInstance {private static SingleInstance instance;private Context mContext;private SingleInstance(Context context) {this.mContext = context;}public static SingleInstance getInstance(Context context){if (instance == null){instance = new SingleInstance(context);}return instance;}
}

结论:

上述代码会存在内存泄漏

原因:

instance对象被static修饰后,该变量的生命周期=应用生命周期,导致该实例所持有的成员变量mContext无法被释放,如果用户传递的Context为Activity的上下文环境,就会导致该activity需要销毁的时候,发现自己的上下文环境还在被这个单例类持有并且设置了强引用,所以无法正常释放并销毁。从而导致内存泄漏

解决方案:

在构造器中通过上下文环境获取应用的上下文环境,赋值给自己的成员变量 mContext,这样该类中的上下文环境的生命周期就和应用的生命周期相等,从而不会出现内存泄漏的情况

  private SingleInstance(Context context) {this.mContext = context.getApplicationContext();}
http://www.yayakq.cn/news/728185/

相关文章:

  • 如何创建设计个人网站app拉新渠道
  • 企业网站建设免费网站开发集
  • 网站建设的外国文献吴江开发区建设局网站
  • 58同城推广能免费做网站吗东莞美容网站建设
  • 做游戏人设计网站电脑网站怎么做
  • 网站开发所需的技术演讲网站开发背景
  • 宝安做网站的河北中保建设集团网站
  • 能看各种网站的浏览器seo平台优化
  • 什么网站后台程序好用开发网站需要什么开发工具
  • 网站建立明细预计表网页设计与制作教程杨选辉
  • 江门网站制作策划莱芜最近的新闻大事
  • 做卡贴质量好的网站nas wordpress备案
  • 东莞手机网站制作公司域名与网站
  • 如何做网站静态页面柳州专业网站建设加盟
  • 东莞网站建设 喷砂机市场调研报告范文
  • 萧县城乡建设局网站怎么去推广一个网站
  • 旅游网站开发与设计论文万维网网站注册
  • 网站的seo优化方案wordpress评论框提示
  • 哈尔滨建设公司网站静态网站设计模板
  • 五种类型网站宝塔做两个网站6
  • 天津网站建设seo优化天津营销类网站设计
  • php商场网站开发经验崇川区城乡建设局网站
  • 专业模板网站制作wordpress更换背景
  • 企业网站建设 价格wordpress电源解析插件
  • 厦门网站建设找哪家比较好赤峰网站建设培训
  • 徐州专门做网站开源cms建站
  • 管理员网站重庆转店铺哪个网站平台好
  • 淄博网站开发找网泰合肥建设网
  • 人力资源做网站的好处wordpress crawling
  • 每一个网站都要后台吗博客网站大全