在andorid开发中,内存小往往是个问题。android设备的内存,分配给每一个应用的内存,至少是16M,在其中跑应用的各个组件。如果应用使用到不少的图片的话,则16M内存很快的就消耗掉了。还有另一个可能导致内存泄露的因素,就是过多的对context的长时间的引用。

     在android中,context往往被用来访问或者是加载资源,它分为activity与apllication两种。比如下端代码:

@Override
protected void onCreate(Bundle state) { 
 super.onCreate(state);    
TextView label = new TextView(this); 
 label.setText("Leaks are bad");    
setContentView(label);
}

其中textview对活动引用,从而导致垃圾回收无法回收活动,而活动又可能加载了布局,因此占内存的布局又不能回收。

posted on 2016-12-10 15:28  C语言答疑课堂  阅读(65)  评论(0编辑  收藏  举报