Logcat 总提示D/dalvikvm : GC_FOR_ALLOC freed

2024-05-03 18:18

本文主要是介绍Logcat 总提示D/dalvikvm : GC_FOR_ALLOC freed,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

出现这总情况一般是界面不停的加载和释放图片的原因。
若不知道是哪里不停的加载和释放图片,可以用DDMS追踪抓出元凶。

例如我的程序启动后,Logcat里面不停的打印下面的信息:

12-07 08:15:18.514: D/dalvikvm(19719): GC_FOR_ALLOC freed 921K (22), 34% free 4222K/6332K, paused 20ms, total 20ms 12-07 08:15:18.532: D/skia(19719): Flag is not 10 12-07 08:15:18.813: D/dalvikvm(19719): GC_FOR_ALLOC freed 921K (23), 34% free 4222K/6332K, paused 24ms, total 24ms 12-07 08:15:18.859: D/skia(19719): Flag is not 10 12-07 08:15:19.148: D/dalvikvm(19719): GC_FOR_ALLOC freed 921K (20), 34% free 4222K/6332K, paused 27ms, total 27ms 12-07 08:15:19.169: D/skia(19719): Flag is not 10 12-07 08:15:19.450: D/dalvikvm(19719): GC_FOR_ALLOC freed 921K (22), 34% free 4222K/6332K, paused 24ms, total 24ms 12-07 08:15:19.494: D/skia(19719): Flag is not 10 12-07 08:15:19.780: D/dalvikvm(19719): GC_FOR_ALLOC freed 921K (23), 34% free 4222K/6332K, paused 24ms, total 24ms


打开 DDMS, 选择设备及当前运行的应用,然后点击右边的“Start Tracking”,几秒后点“Get Allocations”, 仔细查看发现,不停的出现一个“android.graphics.drawable”的类不停的分配内存,点击该条目后,看到一个跟自己应用相关的条目出现,双击后自动定位到对于的代码,这时才发现如下的代码:

mImgLogo.setBackgroundResource(logo_res[mLogoIndex]);

这是我开机用换图的方式实现开机动画。用一个handler+runnable和图片资源数组实现的。本以为在activity退出的时候会自动停止,现在才发现它不会停……所以在activity结束的时候,把runnable从handler移除即可。

@Override protected void onDestroy() {mHandler.removeCallbacks(mChangeLogoRunnable);super.onDestroy(); }

之后Logcat就没出现不停打印 D/dalvikvm : GC_FOR_ALLOC freed 之类的信息了。

这篇关于Logcat 总提示D/dalvikvm : GC_FOR_ALLOC freed的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/957349

相关文章

Python运行中频繁出现Restart提示的解决办法

《Python运行中频繁出现Restart提示的解决办法》在编程的世界里,遇到各种奇怪的问题是家常便饭,但是,当你的Python程序在运行过程中频繁出现“Restart”提示时,这可能不仅仅是令人头疼... 目录问题描述代码示例无限循环递归调用内存泄漏解决方案1. 检查代码逻辑无限循环递归调用内存泄漏2.

C#TextBox设置提示文本方式(SetHintText)

《C#TextBox设置提示文本方式(SetHintText)》:本文主要介绍C#TextBox设置提示文本方式(SetHintText),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录C#TextBox设置提示文本效果展示核心代码总结C#TextBox设置提示文本效果展示核心代

SpringBoot应用中出现的Full GC问题的场景与解决

《SpringBoot应用中出现的FullGC问题的场景与解决》这篇文章主要为大家详细介绍了SpringBoot应用中出现的FullGC问题的场景与解决方法,文中的示例代码讲解详细,感兴趣的小伙伴可... 目录Full GC的原理与触发条件原理触发条件对Spring Boot应用的影响示例代码优化建议结论F

mss32.dll文件丢失怎么办? 电脑提示mss32.dll丢失的多种修复方法

《mss32.dll文件丢失怎么办?电脑提示mss32.dll丢失的多种修复方法》最近,很多电脑用户可能遇到了mss32.dll文件丢失的问题,导致一些应用程序无法正常启动,那么,如何修复这个问题呢... 在电脑常年累月的使用过程中,偶尔会遇到一些问题令人头疼。像是某个程序尝试运行时,系统突然弹出一个错误提

电脑提示找不到openal32.dll文件怎么办? openal32.dll丢失完美修复方法

《电脑提示找不到openal32.dll文件怎么办?openal32.dll丢失完美修复方法》openal32.dll是一种重要的系统文件,当它丢失时,会给我们的电脑带来很大的困扰,很多人都曾经遇到... 在使用电脑过程中,我们常常会遇到一些.dll文件丢失的问题,而openal32.dll的丢失是其中比较

电脑提示msvcp90.dll缺少怎么办? MSVCP90.dll文件丢失的修复方法

《电脑提示msvcp90.dll缺少怎么办?MSVCP90.dll文件丢失的修复方法》今天我想和大家分享的主题是关于在使用软件时遇到的一个问题——msvcp90.dll丢失,相信很多老师在使用电脑时... 在计算机使用过程中,可能会遇到 MSVCP90.dll 丢失的问题。MSVCP90.dll 是 Mic

电脑开机提示krpt.dll丢失怎么解决? krpt.dll文件缺失的多种解决办法

《电脑开机提示krpt.dll丢失怎么解决?krpt.dll文件缺失的多种解决办法》krpt.dll是Windows操作系统中的一个动态链接库文件,它对于系统的正常运行起着重要的作用,本文将详细介绍... 在使用 Windows 操作系统的过程中,用户有时会遇到各种错误提示,其中“找不到 krpt.dll”

CSS模拟 html 的 title 属性(鼠标悬浮显示提示文字效果)

《CSS模拟html的title属性(鼠标悬浮显示提示文字效果)》:本文主要介绍了如何使用CSS模拟HTML的title属性,通过鼠标悬浮显示提示文字效果,通过设置`.tipBox`和`.tipBox.tipContent`的样式,实现了提示内容的隐藏和显示,详细内容请阅读本文,希望能对你有所帮助... 效

Mybatis提示Tag name expected的问题及解决

《Mybatis提示Tagnameexpected的问题及解决》MyBatis是一个开源的Java持久层框架,用于将Java对象与数据库表进行映射,它提供了一种简单、灵活的方式来访问数据库,同时也... 目录概念说明MyBATis特点发现问题解决问题第一种方式第二种方式问题总结概念说明MyBatis(原名

Ubuntu 24.04 LTS怎么关闭 Ubuntu Pro 更新提示弹窗?

《Ubuntu24.04LTS怎么关闭UbuntuPro更新提示弹窗?》Ubuntu每次开机都会弹窗提示安全更新,设置里最多只能取消自动下载,自动更新,但无法做到直接让自动更新的弹窗不出现,... 如果你正在使用 Ubuntu 24.04 LTS,可能会注意到——在使用「软件更新器」或运行 APT 命令时,