无限循环中的内存泄漏

时间:2015-03-22 15:52:19

标签: c memory-leaks infinite-loop

如果您运行的程序不断产生内存泄漏,计算机会造成什么损害?

例如:

while(true)
{
    char* c = malloc(sizeof(char));
    c = NULL;
}

然后让代码执行数小时或数天?

1 个答案:

答案 0 :(得分:5)

你可能不会有机会每天运行它。当系统停止您的程序时,未分配的主内存将很快达到阈值级别。在大多数情况下,操作系统将停止该过程,此时系统将运行缓慢。最糟糕的是 - 分配的内存无法使用,因为它的引用已丢失

注意:此内存泄露并未永久丢失。程序终止后的系统将重置可用的物理内存。不是硬盘驱动器的内存。