当我从我运行的服务获得某个广播消息时,我写入共享首选项。我想知道如果这会导致内存泄漏? 如果是这样,我该如何解决它。我将被要求在20-25分钟内运行此代码。做旧线程Die?
if(Wifi_Connected)
{
Thread thread2= new Thread(new Runnable() {
@Override
public void run() {
SharedPreferences.Editor e = sharedData.edit();
e.putInt("Value",1);
e.commit();
}
});
thread2.start();
}
答案 0 :(得分:0)
不,它可能会导致一些UI打嗝。提交操作非常快,因此它不会持有太长时间的外部类。但是你最好使用在后台线程中执行操作的apply()方法。 一般来说,当您持有对诸如活动之类的“大”对象的引用时会出现泄漏,并且因此无法销毁它。