刚才有个想法,就是在堆中无限申请内存,看看任务管理器中内存使用有什么变化。于是,我就这么写:GetMem(p,1024);然后在一个无限循环中写:ReallocMem(p,1024*i);但是我执行的时候我看到内存跳动了一下,然后这边立马就弹出异常,说是‘out of memory’。堆的大小不是有2G么,怎么一下子报异常了。我很多地方不懂,大神能不能详细的解释一下。
无限循环如果连续执行,CPU的速度会非常快执行完,因此你就看到1次就跳动就报异常
循环中加等待或输入就可看到,不过每次1024的倍数,看的不明显
谢谢大神指点,我好像顿悟了。