我有android应用程序2.3.3使用calendarView 当按下按钮=>显示对话框(包含calendarView)
我的logcat显示:
D/dalvikvm(15292): GC_CONCURRENT freed 1988K, 10% free 20024K/22087K, paused 4ms+3ms
D/dalvikvm(15292): GC_CONCURRENT freed 1995K, 10% free 20022K/22087K, paused 4ms+3ms
D/dalvikvm(15292): GC_CONCURRENT freed 1986K, 10% free 20029K/22087K, paused 4ms+3ms
D/dalvikvm(15292): GC_CONCURRENT freed 2005K, 10% free 20023K/22087K, paused 4ms+3ms
D/dalvikvm(15292): GC_CONCURRENT freed 1995K, 10% free 20016K/22087K, paused 4ms+3ms
D/dalvikvm(15292): GC_CONCURRENT freed 1997K, 10% free 20022K/22087K, paused 3ms+4ms
它减慢了我的应用... 我认为垃圾收集暂停了我的应用程序 请帮我快点显示!
谢谢!
答案 0 :(得分:2)
垃圾收集器是一个守护程序线程。你既不能阻止也不能叫它。您可以向垃圾收集器发出请求,例如System.gc()。
另外,垃圾收集器有助于提高性能。
如果您不希望GC收集您的对象,则只需保留参考。
如果您的对象过早收集,则表明您的应用程序设计存在错误。
答案 1 :(得分:1)
当实现需要avoid garbage collection
的应用程序(如游戏等)时,因为每次垃圾收集器执行时都会引入小暂停,
All you can do is avoid to keep on creating objects and try to reuse as much as possible the objects instances you already have.
这可以通过不同方式take a look at this
完成答案 2 :(得分:1)
使用CalendarView时,我注意到一个非常令人惊讶的事情。当我将日历高度设置为数字时,例如。 android:layout_height =“400dp”垃圾收集器没有运行,但是当我将其设置为match_parent时,每次切换方向都会运行垃圾收集器。也许这就是答案?
答案 3 :(得分:0)
谢谢!