最近做一个应用,log一直在打印
GC_CONCURRENT freed 433k,7% free 7975K/8564K,paused 12ms+4ms, total 70ms
类似这样的信息。
这个应用在一直使用的情况下是没有问题的,可是锁屏大概1分钟之后再回来,一种情况是应用直接没有响应了,另一种情况是等很久(大概10秒左右)又能响应,等它能响应回来后,又可以正常工作了。
真是不知道是怎么回事,从log信息看到虽然UI上面没有响应,可是后台的service还在正常工作的。
是内存泄露吗?因为从上面的GC_CONCURRENT
看出,我只有7%的内存是free的,还是什么别的原因引起的?
另外还有一个问题,就是我用一个继承Application的类来管理activity的退出,在点击退出按键的时候调用
public void exit() {
Log.e(TAG, "exit in myapplication");
for (Activity activity : activityList) {
Log.e(TAG, activity.getLocalClassName()+ " finish");
activity.finish();
}
System.exit(0);
}
这个函数,可是发现执行finish()方法后activity的onDestroy方法并没有被调用,这是怎么回事啊?