【问题标题】:iphone memory issueiphone内存问题
【发布时间】:2010-11-16 15:18:11
【问题描述】:
我有一个 iPhone 应用程序,可以在其中保存许多图像。
我使用 SQLite 将图像保存到应用程序中。
在我保存了 20 多张图片后,出现了很多内存问题。
有人知道用户可以在他们的应用数据库中保存多少张图片吗?
如果它取决于 iphone 内存,我们如何获得最大限制?。
还有一件事:
我已删除数据库并使用文件系统将图像存储到应用程序中。
但同样的问题被复制了。
有人可以建议我吗?
我非常感谢您的大力帮助。
提前致谢。
【问题讨论】:
标签:
iphone
objective-c
image
memory
uiimage
【解决方案1】:
我认为将图像存储在文件系统中是一个更好的主意,您能否向我们提供更多信息,例如图像大小,以及您的一些保存代码?
【解决方案2】:
当您说“内存问题”时,您是指导致内存不足异常的泄漏,还是您确定您的数据库已完全填满设备的磁盘。要了解 SQLite 可以存储多少,请阅读this question 上的讨论。
另一方面,如果您遇到内存不足异常 (didReceiveMemoryWarning),则需要调整您的代码。特别是,在处理许多图像时,只需避免使用 'imageNamed' 工厂方法就可以了。这是因为它创建了一个自动释放对象,该对象在内存中的保留时间更长。而是使用“initWithContentsOfFile”创建 UIImages 来创建图像并在使用后立即释放它。如果您仍然面临内存问题,您可能有一些泄漏,需要发布一些代码以便人们更正确地回答。