记录解决WINCE下一次内存泄漏的情况

来源:互联网 发布:网络拓扑图图标详解 编辑:程序博客网 时间:2024/06/03 15:34




这几天被一个内存泄漏问题折腾的要命,所幸最后还是解决了,现记录如下......


  1>通过一个标志来记录当前的工作模式,但这个标志在资源还没卸载之前就被改变了,造成没能对应把前模式的资源卸载掉,从而造成内存泄漏,造成系统的内存占用率不断上升,最后弹出OUT OF MEMORY窗口


  2>CreateDIBSection创建的图片的资源的内存调用DeleteObject函数就可以释放的,不需要手动去释放!!!系统会被我们做这些工作的


  3>是先删除BMP资源还是先删除DC资源,应该不重要!但一定要记得把BMP资源选出DC,要不然BMP资源删除不了,资源有没卸载成功可以去判断DeleteObject函数的返回值,为1表示正确删除


 4>new/delete和malloc和free------这些内存分配与释放的函数一定要配对使用!!!


 5>定位问题记得要找到方法,好的方法一般是事半功倍,在可以验证的基础上再往下走,要不然总感觉是一团乱麻,理不清头绪。觉得自己在这方面真的很欠缺!!!


6>有问题的时候,最好是多想想,多找找自己的问题,不要动不动去怀疑系统,怀疑GDI系统,甚至去怀疑Microsoft的东西


7>写软件一定要懂得如何调试,如何快速调试,很多问题通过DEBUG走一遍往往就可以显而易见,而不是靠猜想,靠我觉得,我认为没有问题,记得计算机永远没有人的大脑有智能,它只能做人给它安排的事情


8>创建的对象记得一定要确保其被释放掉,往往在一个函数里面有很多地方直接Return退出了而没有释放前面创建的对象,这种情况很容易被忽失,从而造成对象的泄漏而查无对证

原创粉丝点击