玩大型游戏前,简单的优化一下内存,代码如下
easyx吧
全部回复
仅看楼主
level 9
zhangjb90s 楼主
[飘过]
#include <stdio.h>
#include <conio.h>
#include <malloc.h>
#include <string.h>
int main(){
char *ptr;
int i=1;
while(!kbhit())
{
ptr=(char*)malloc(1024*1024);
strcpy(ptr,"aaaaaa");
printf("%d\n",i);
i++;
}
getch();
return 0;
}
2012年11月30日 13点11分 1
level 11
虾米原理?
2012年11月30日 13点11分 2
肯定有交换内存
2012年11月30日 13点11分
level 9
zhangjb90s 楼主
量力而行,看好收手。结束程序后,内存瞬间变多。。。。。。。。。
2012年11月30日 13点11分 3
level 12
一直分配内存,直到分配失败而退出?然后迫使系统将其他程序的内存写入交换内存?感觉这样做意义不大吧?
2012年11月30日 14点11分 4
我试过一次,感觉良好,刚开始内存仅剩500多M,运行好,等到i输出速度慢下来后,赶紧退出程序。刷新几下,内存剩余达到1100多,然后开始玩游戏。这样操作系统提前将不用的内存交换出去,玩游戏时会好点,我觉得。。。。不知道这样对不对?
2012年11月30日 15点11分
回复 zhangjb90s : 你运行游戏后,感觉有区别吗?
2012年12月01日 15点12分
回复 yangw80 :这个。。。。。。嘿嘿,我真的不是cpu,感觉不到
2012年12月02日 06点12分
回复 zhangjb90s : 通常来说,交给操作系统自己来调整内存比较好。如果游戏载入时内存不够,操作系统会自动将不常用的程序所占用的内存交换出去。
2012年12月04日 00点12分
1