gpt4 book ai didi

audio - SDL_Open 中的内存泄漏

转载 作者:行者123 更新时间:2023-12-03 02:28:46 25 4
gpt4 key购买 nike

环境:Ubuntu 11.04。 SDL 1.2.15。

在我基于 SDL 的应用程序中,我一个接一个地播放多个视频剪辑。对于每个视频,我在开头调用 SDL_OpenAudio,最后调用 SDL_CloseAudio。但是,每一轮都会留下两个未释放的内存块。它们都来自内部 SDL 函数 AudioAvailable。



==17035== 372 bytes in 3 blocks are definitely lost in loss record 139 of 169
==17035== at 0x4C28F9F: malloc (vg_replace_malloc.c:236)
==17035== by 0xB2B0564: ??? (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0)
==17035== by 0xB2B062A: ??? (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0)
==17035== by 0xB2B01CA: xcb_connect_to_display_with_auth_info (in /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0)
==17035== by 0xCC650ED: pa_client_conf_from_x11 (in /usr/lib/x86_64-linux-gnu/libpulsecommon-1.0.so)
==17035== by 0xC9ED83E: pa_context_new_with_proplist (in /usr/lib/x86_64-linux-gnu/libpulse.so.0.13.4)
==17035== by 0xC7DD9F2: pa_simple_new (in /usr/lib/x86_64-linux-gnu/libpulse-simple.so.0.0.3)
==17035== by 0x418AED: Audio_Available (SDL_pulseaudio.c:235)
==17035== by 0x405893: SDL_AudioInit (SDL_audio.c:360)
==17035== by 0x404A79: SDL_InitSubSystem (SDL.c:105)
==17035== by 0x405E59: SDL_OpenAudio (SDL_audio.c:404)


我想知道我的代码中是否有一些我可能做错的事情。我已经验证 SDL_CloseAudio 确实被调用了。

最佳答案

无论如何,我都不是 SDL 或 OpenGL 方面的专家,但我认为大多数软件都会在某一时刻泄漏内存。有关更多信息,请参阅此帖子:Why does valgrind say basic SDL program is leaking memory?

从好的方面来说,SDL 只泄漏了 374 字节,与大多数系统提供的相比,这只是几分钱。从长远来看,它不应该有很大的不同。

关于audio - SDL_Open 中的内存泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10928837/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com