我们专注攀枝花网站设计 攀枝花网站制作 攀枝花网站建设
成都网站建设公司服务热线:400-028-6601
网站建设
移动开发
小程序开发
运维推广
网站推广
网站推广
运维外包
运维外包
网站报价
经典案例
网站知识
关于我们
网站建设知识
十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
怎么检测内存泄露-创新互联
检测内存泄漏的关键是要能截获住对分配内存和释放内存的函数的调用。截获住这两个函数,我们就能跟踪每一块内存的生命周期,比如,每当成功的分配一块内存后,就把它的指针加入一个全局的list中;每当释放一块内存,再把它的指针从list中删除。这样,当程序结束的时候,list中剩余的指针就是指向那些没有被释放的内存。这里只是简单的描述了检测内存泄漏的基本原理,详细的算法可以参见SteveMaguire的<
>。如果要检测堆内存的泄漏,那么需要截获住malloc/realloc/free和new/delete就可以了(其实new/delete最终也是用malloc/free的,所以只要截获前面一组即可)。对于其他的泄漏,可以采用类似的方法,截获住相应的分配和释放函数。比如,要检测BSTR的泄漏,就需要截获SysAllocString/SysFreeString;要检测HMENU的泄漏,就需要截获CreateMenu/DestroyMenu。(有的资源的分配函数有多个,释放函数只有一个,比如,SysAllocStringLen也可以用来分配BSTR,这时就需要截获多个分配函数)在Windows平台下,检测内存泄漏的工具常用的一般有三种,MSC-RuntimeLibrary内建的检测功能;外挂式的检测工具,诸如,Purify,BoundsChecker等;利用WindowsNT自带的PerformanceMonitor。这三种工具各有优缺点,MSC-RuntimeLibrary虽然功能上较之外挂式的工具要弱,但是它是免费的;PerformanceMonitor虽然无法标示出发生问题的代码,但是它能检测出隐式的内存泄漏的存在,这是其他两类工具无能为力的地方。
网页名称:怎么检测内存泄露-创新互联
本文网址:
http://shouzuofang.com/article/dpecch.html
其他资讯
详解aotu.js如何实现微信自动添加通讯录中的联系人功能
什么是.NetFramework异常
Vue-router报NavigationDuplicated错误怎么办
CMD的命令名有哪些
包含漏洞 文件类型白名单验证及判断后缀的解决办法