3

我在使用 Leaks 仪器时犯了一个错误,我认为所有的生物都是内存字节,所以我更新了我的帖子!

[更新]

大家好,

我面临一个问题:

我的应用程序使用 UITableView 呈现实时数据,它可能包含最多 34 个自定义单元格,因此在接收更新数据时,我必须为该 UITableView 执行 reloadData,它通常重新加载 2-3 次/秒以更新 2-5 个单元格(以及当单元格更新时,我使用 UiView 动画来闪烁相关的文本标签)。

启动应用程序时,一切正常,运行平稳,但保持运行大约 20-30 分钟,它会变慢,有时会在一秒钟内挂起。我确实使用 Leaks 仪器测试了我的应用程序,发现它在启动后使用了大约 17Mb 的内存,但在20-30 分钟后,它使用了25k-28k 的活体(1.7Mb 的内存),当我尝试浏览所有屏幕时,它使用多达8 万个活体(6.5Mb 内存) :(

我猜 UITableView 多次重新加载会导致我的应用程序一次又一次地使用越来越多的内存并使其运行缓慢。

所以有人知道如何解决这个问题,请帮助我,非常感谢!

4

2 回答 2

4

你可以reloadRowsAtIndexPaths:withRowAnimation:改用吗?

于 2010-10-27T02:48:06.397 回答
2

纠正内存泄漏而不是解决方法......

在每次数据接收时,您不应释放所有增加内存大小的数据。

于 2010-10-27T05:08:16.160 回答