-1

我正在使用 C# 前端在 VS2010 中开发一个应用程序,该前端通过 C++/CLI 包装器使用本机 C++ DLL。我注意到仅在发布模式下发生的严重内存泄漏(或引用泄漏)。在调试模式下,应用程序的内存占用是稳定的。

我已将问题的根源缩小到视频播放循环,并且在某些时候我相当有信心视频数据没有被正确处理。但是,我想知道对于仅在发布模式下发生的泄漏,我应该特别注意什么。

对于它的价值,在有问题的 C++/CLI 类中,我正在实现此处介绍的 dispose/finalize 模式。

4

2 回答 2

5

如果我是你,我会寻找对类型构造中assert或其他#ifdef _DEBUG/#endif类型构造中的释放函数的调用。

于 2013-08-14T14:44:51.080 回答
0

浏览您的项目设置并检查所有运行时库。有时问题实际上不是您要链接到的运行时库本身,而是您在项目中设置为忽略的运行时库。

根据微软的这个页面,您必须仔细注意要忽略哪个库,具体取决于您使用的是哪个库。

于 2013-08-14T14:52:21.520 回答