首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MainActivity泄露了IntentReceiver

MainActivity泄露了IntentReceiver
EN

Stack Overflow用户
提问于 2013-10-06 20:50:29
回答 1查看 3.9K关注 0票数 0

当我以编程方式注册我的BroadcastReceiver时,我在LogCat中得到以下错误。我知道我没有在活动中注销我的BroadcastReceiver。

但是当我通过Manifest注册时,我没有得到这个错误。为什么?

这也意味着MainActivity泄露了IntentReceiver?它会在内存中产生任何问题吗?

如果我没有注销我的BroadcastReceiver,会发生什么呢?

代码语言:javascript
复制
    10-06 18:09:38.057: E/ActivityThread(15435): Activity com.collabera.labs.sai.MainActivity

 has leaked IntentReceiver com.collabera.labs.sai.MyBroadcastReceiver@41c8bc68 that was 

originally registered here. Are you missing a call to unregisterReceiver()?
EN

回答 1

Stack Overflow用户

发布于 2013-10-07 21:34:21

当对象存储在内存中但无法访问时,就会发生内存泄漏,因为指向该对象的指针已被删除。它会降低性能,因为它会占用内存,在最坏的情况下,系统会崩溃。

由于Android运行的是Java,垃圾收集器应该会处理它,但它当然更倾向于正确地处理它,而不是把它留给GC。

以下是有关内存泄漏的一些信息:

Wikipedia - Memory leaks

Android - Avoiding memory leaks

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19209031

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档