如何多次运行循环

时间:2013-04-05 04:54:49

标签: objective-c

我正在使用字符串,我运行循环很多次应用程序崩溃了。它显示错误消息我如何管理错误消息是malloc: * mmap(size = 16777216)失败(错误代码= 12) 错误:无法分配区域 在malloc_error_break中设置断点以进行调试 * 由于未捕获的异常'NSMallocException'而终止应用程序,原因是:'内存不足。我们建议重新启动该应用程序。如果您有未保存的文档,请在Finder中创建备份副本,然后尝试保存。我的代码是`NSMutableString * str = [NSMutableString stringWithCapacity:100000];

int i;
for(i=0;i<1000000;i++){
    [str appendString:@"abcd"];

}`

1 个答案:

答案 0 :(得分:4)

在不知道你实际在做什么的细节的情况下,不可能说出来。

通常,当内存不足时,答案是使用更少的内存。

对于涉及大量数据的操作,您需要转移到通过磁盘缓冲的某些操作。这可以通过任何方式完成。使用哪一个取决于你要做的任何事情的细节。

如果您真的只是将文本附加到缓冲区,则打开文件描述符(或NSFileHandle)并写入该文件描述符。