未分類 15 5 月 2020 .net 非托管内存问题 .net 非托管内存问题 資深大佬 : laball 6 有没有人遇到过.net 非托管内存泄漏问题,想探讨一下。 大佬有話說 (8) 資深大佬 : skinny 要么是你自己的问题,要么是你用的库的问题,善用 IDisposable 接口和 using 資深大佬 : Soar360 有一个工具叫 dotMemory,不会 sos 的话可以尝试下。 資深大佬 : wanguorui123 没手动释放? 資深大佬 : jiumingzhu 莫非用了别人的 dll,然后那个人没有释放? 資深大佬 : yulitian888 非托管内存,泄露?我遇到过一个情况刚刚好相反,非托管也会被 GC 胡乱回收,链接: https://www.v2ex.com/t/575061非托管泄露我遇到过一次,是很多来年前做 WPF 的时候。因为 WPF 调用了 Dx9 的 COM 资源,老大难问题,无解。直到等了 N 年之后微软才给修复。 主 資深大佬 : laball @Soar360 我用 windbg 分析过,托管内存不到 1G 多,非托管内存 7G 多,差距太大,已经很明显是非托管内存泄漏了。 主 資深大佬 : laball @jiumingzhu 使用了 OpenPop,Lumisoft.Net 这两个库,都是以源代码形式,有做部分修改,主要功能是收取邮箱中的邮件; 資深大佬 : Soar360 非托管内存泄露,以我的经验是发生在跨语言调用过程中,非托管申请的内存没有被 free 造成的。可以参看下↓ https://www.coderbusy.com/archives/286.html