我目前在我的游戏中使用 openAl。我得到了内存泄漏,其负责的框架是 `
OALSource:AddPlaybackMessage
` 我正在做的是,在我的游戏结束后,我删除所有分配给源的缓冲区并释放其他 pcmdata 指针等。在开始游戏之前,我用音频数据重新初始化源和它们的缓冲区。在这个阶段我得到了这个泄漏。知道它为什么会发生......有些帖子说它是苹果 OpenAl 库中的一个错误,但我不这么认为......苹果必须对此采取一些措施......
谢谢
最佳答案
好的,现在我没有从 openAL 得到任何泄漏。我所做的是:-
- 再次初始化源时,首先删除它们及其各自的缓冲区并释放所有 pcmData 指针。
- 重新生成资源和缓冲区。
- 永远不要删除 openALContext 和 openALDevice 。当您的应用程序启动时,仅获取上下文和设备一次。在 Dealloc() 上删除它们。
希望这能解决您的 openAl 泄漏问题。
干杯
关于iphone - OpenAL 泄漏- OALSource :AddPlaybackMessage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8709274/