0

我实现了一个适配器视图,其中有一个非常大的数据集(2000 多个对象)排列在一个列表中。滚动太快会导致内存增长,在使用 eclipse 的 MAT 分析后,所有增长都被绑定在 MessageQueue 中。以下是具体消息:

One instance of "android.os.MessageQueue" loaded by "<system class loader>" occupies 57,300,528 (77.75%) bytes. The memory is accumulated in one instance of "android.os.Message" loaded by "<system class loader>".

有哪些事情可能会导致这种情况?

4

1 回答 1

0

这是由于每个对象产生一个异步任务来抓取图像并在视图被回收时取消。当列表移动得足够快时,这些任务以真正可怕的速度被创建和取消,导致消息无处不在。

于 2013-03-26T14:44:13.370 回答