SFML 2.4.1 内存泄漏

sfml 2.4.1 memory leaks

本文关键字:内存 泄漏 SFML      更新时间:2023-10-16

我使用 SFML-2.4.1,MSVS2015,我有最后一张 NVIDIA 卡 (378.49),该程序有内存泄漏(在>5 分钟内工作时很明显):

#include <SFMLGraphics.hpp>
using namespace sf;
int main()
{
    Image image;
    image.create(200, 200);
    while (1)
    {
        Texture t;
        t.loadFromImage(image);
    }
    system("pause");
    return 0;
}

而这段代码没有:

#include <SFMLGraphics.hpp>
using namespace sf;
int main()
{
    Image image;
    image.create(200, 200);
    Texture t;
    while (1)
    {
        t.loadFromImage(image);
    }
    system("pause");
    return 0;
}

这是sf::Texture::~Texture()的问题吗?

我无法真正重现此问题,并且我认为这不应该发生。也许是一些驱动程序错误和/或设置可能与您的显卡型号结合使用?

使用

MSVC 2017 RC 编译您的代码片段为 x64,无论运行多长时间,该程序的内存使用量都非常恒定(GTX 1080 上的驱动程序版本相同)。

尝试编译最新的源代码版本,看看这是否会改变任何内容。