【发布时间】:2012-08-29 22:33:37
【问题描述】:
所以,这就是我想要做的:
- 释放系统内存(非活动内存),与
purge命令的方式相同,但以编程方式。
我已经尝试过这里的代码(它的作者声称它可以工作),但它所做的只是导致 Mac OS X 冻结:
void
free_up_memory()
{
int c;
char *p, *q;
for(c = 0; c < 2048; c++)
{
if(!(p = malloc(1024 * 1024)))
{
return;
}
for(q = p; q < p + (1024 * 1024); q += 4096)
{
*q = 1;
}
}
}
有什么想法吗?
【问题讨论】:
-
链接到“它的作者”,解释一下可能好吗?
-
哦,你为什么要释放内存——如果它处于非活动状态,OSX 不会在你请求时给你它(这不是一个尖刻的评论,我真的很感兴趣: )
标签: objective-c c macos cocoa memory