无限循环中的内存泄漏

Bra*_*ess 0 c memory-leaks infinite-loop

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

例如:

while(true)
{
    char* c = malloc(sizeof(char));
    c = NULL;
}
Run Code Online (Sandbox Code Playgroud)

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

use*_*738 5

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

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