Rocky Linux 和动态分配

Rocky Linux and dynamic allocations

提问人:Pacou 提问时间:9/19/2023 最后编辑:Jason AllerPacou 更新时间:9/19/2023 访问量:39

问:

有人有以下问题吗?当我们在一定时间(30 分钟)后进行动态分配(接受而不bad_alloc)时,会发生内存泄漏,直到达到上限。

#include <iostream>


#define MAX_BUFFER_SIZE 65535

int main()
{
    ///////////// Without this dynamic allocation no memory leak
    for(int i = 0; i < 6000; ++i)
    {
        new char[MAX_BUFFER_SIZE];
    }

      // The std::cin below shows after 30 minutes that a memory leak is occurring
      // It increases until it reaches a ceiling
    
    char c;
    
    std::cout<< "Press key to exit"  << std::endl;

    std::cin >> c;

    return 0;
}

多谢

我已经在 Rocky Linux 8.8 下进行了测试,源代码是用 gcc 8.5 编译的

Linux 内存泄漏 Rocky-OS

评论

1赞 stark 9/19/2023
分配内存并丢失指针不是内存泄漏的定义吗?你期待这做什么?
0赞 Pacou 9/20/2023
这个非常简单的程序只是为了显示问题。在我的软件中,有一个动态分配,在启动时进行,最后释放。我不明白,在巡航速度下,当没有更多的分配时,就会发生泄漏,直到达到天花板。当我减少代码直到什么都没有时,我注意到使用这个非常简单的代码,30 分钟后内存在增加,而无需采取任何行动。仅在 RedHat 系列(centos、rocky)上。
0赞 stark 9/21/2023
请提供内存泄漏的证据。你只是在衡量 Linux 的过度使用页面分配吗?查看 serverfault.com/q/606185/115396

答: 暂无答案