内存管理(带有图像的 UICollectionView)
Posted
技术标签:
【中文标题】内存管理(带有图像的 UICollectionView)【英文标题】:Memory Management (UICollectionView with images) 【发布时间】:2016-08-27 11:55:04 【问题描述】:我有一个导航栏和 2 个视图。一个视图有一个按钮,显示 UICollectionView 以及从 URL 加载的图像。假设我在应用程序启动时有 10 mb 内存。单击一个按钮会显示图像,总共 30-40 mb。单击“返回”并离开集合视图后,会显示 20 mb 的内存使用情况,并且来回单击多次后,就不会回到最初的 10 mb。
我需要担心吗?
为什么我不能回到 10mb 的初始状态?
【问题讨论】:
不用担心,内存会在需要的时候回收,很多东西都存储在缓存中,会在内存压力时刷新。 【参考方案1】:图像加载通常使用缓存。具体来说,imageNamed
调用会缓存图像,以防您再次使用它们。 (有关详细信息,请参阅 imageNamed 上的文档。)
正如 Jean-Baptiste 在他的评论中所说,如果内存不足,图像缓存将自动刷新。
如果您反复转到您的收藏视图,按返回,然后重新访问您的收藏视图,并且您的内存占用量每次都增加,那么您可能遇到了问题,但您的内存使用量通常会从“低水位”攀升启动后标记”,并且永远不会回到那个低点。
【讨论】:
哦。我明白了,它确实有道理。谢谢!以上是关于内存管理(带有图像的 UICollectionView)的主要内容,如果未能解决你的问题,请参考以下文章
使用带有内存流的 c# 在控制台应用程序中保存图像时,GDI + 中发生一般错误