我正在为Mac编写一个Cocoa程序,它包含一个图片浏览器。 图片浏览器的工作是从网上下载图片并显示它。每次我点击一个可以给它一个图片URL的按钮,它都会这样做。所以这会很频繁。可可应用程序的奇怪内存问题
我的设计目标是,每当我切换到另一张图片或暂时关闭它(它不是主窗口)后,它都会释放它所需的内存。例如,在我打开图片浏览器之前,我的应用程序需要1M内存。打开图片后,需要大约2M内存。关闭它后,它会将内存使用量降低到原来的1M。
问题是,有时在我观看图片后,尤其是一个大图片时,观众不会给出它花费的所有内存,例如打开它花费大约20M内存,但是在我关闭它之后,只有10发布的20个,另外10个仍然存在,永远不会被释放。它看起来像内存泄漏,但我检查了我的代码并分析了很多次,我找不到任何内存泄漏,而且其他一些图片也不会像这样。
这很奇怪,这可能是肯定的可可内存缓存策略吗?任何建议,将不胜感激。提前致谢!
更新:今天我添加一个scrollView作为imageView的包装,这个奇怪的内存问题似乎几乎是固定的。
感谢您的建议,edc1591,我会继续弄清楚发生了什么事。
发布问题所在的代码。 – edc1591 2011-04-25 23:48:33