使用windbg后,目标程序内存过大
今天写了个win32小程序,其中链接了我自己写的一个dll,,查看任务管理器发现没有内存泄露(内存一直稳定在2500k),但有句柄泄露,然后想到用windbg调试(attach 到该进程),没有发现可疑的句柄泄露。之后关掉windbg,发现有两个问题:
1.程序退出崩溃,崩溃在CoUninitialize,之前确定是不会崩溃的,但是使用了windbg后就会了,后来发现有个COM对象没有Release,我加上之后,就不会了。但是疑惑的是,之前没加Release,为什么没有崩溃。
2.刚启动该程序,发现内存已经是6000K(这明显有问题,因为以前一直是2500K),后来又用windbg看了下,过一会再启动程序,发现内存刚开始就是300000k,而且一直在涨(涨幅速度为8k),不过涨到一定值后就不再增长了。我怀疑是我程序问题,我直接把所有功能卸载,剩下的代码跟开始创建win32应用程序的代码一样,这时候发现内存竟然也达到了30000k(啥都没做竟然这么大内存),后来我再创建一个新的win32应用程序,没有加任何代码,内存是1100K。
我对windbg不太熟悉,不知道是不是哪里使用不当造成了这个问题?