| Profil de Duo一心天堂PhotosBlogListes | Aide |
|
7 novembre 泄漏,泄漏! 哦,又是内存泄露。昨天今天,在发布能编辑文档后,突然发现了5个内存泄露,其中三个是因为我有意暂时不加释放程序,造成的。还是习惯不好啊。后面两个就诡异了。一个是在DLL内部调用的。其诡异表现在一个丝毫没有被执行到的new,造成了泄漏。百思不得其解,和riger前辈交流了一下午,没有结果,最后认为是编译器bug。今天早上还是不死心,心里总有个疙瘩。抱着再试一次的想法,我依旧使用_CrtSetbreakAlloc试图定位。(昨天试过,结果没断下来)。经过一个早上的折腾,最后发现没定位下来的原因,是其内存分配的ID早于我的CRT调试函数,提醒我了,所以在构造APP的时候调用,结果定位,最后发现造成泄漏的是我给静态变量来了个new,而恰好没有调用相应的释放函数。而两个内存泄露,一个是因为我包含了含该变量的cpp文件,而在DLL内因为再次调用,但不在同一地址空间,因为两次执行。最后还是自己粗心了。不过编译器的报告确实存在误导,它根本没有检查出静态变量的泄露,而是报我成员函数内new的泄露,这算编译器一个警告的不完善的bug吧。
哎,不过还是有内存泄露,今天后来去拿笔记本了,明天还得把电脑修修,估计晚上才有时间改这两个bug吧,我实在很讨厌内存泄露啊。 CommentairesPour ajouter un commentaire, connectez-vous avec votre identifiant Windows Live ID (si vous utilisez Messenger ou Xbox LIVE, vous avez un identifiant Windows Live ID). Connectez-vous Vous n'avez pas d'identifiant Windows Live ID ? Inscrivez-vous RétroliensL'URL de rétrolien de ce billet est : http://playpointxd.spaces.live.com/blog/cns!F76C78ED20EEB74B!1075.trak Blogs Web qui font référence à ce billet
|
|
|