工做環境:WIN7,VS2010: spa
最近一個項目中,程序退出後,每次都出現內存泄漏,每次退出的時候泄露的內存塊都是1654,1650。 .net
Detected memory leaks! Dumping objects -> {1654} normal block at 0x01CC1B28, 40 bytes long. Data: 54 00 69 00 63 00 6B 00 65 00 74 00 20 00 69 00 {1650} normal block at 0x01CC1BF0, 16 bytes long. Data: 64 6B E8 95 68 79 0D 4E FD 80 7F 4F 28 75 00 00 Object dump complete.
解決方法 調試
一、在程序開始的地方,加上代碼:_CrtSetBreakAlloc(1654); //1654爲上面內存泄漏的塊號。 code
二、用Debug模式運行,程序自動斷點在「內存塊1654」分配的位置。 orm
三、這個時候一直利用「調試」-「退出」,或快捷鍵「SHIFT+F11」跳轉,直到看到了本身的代碼。 blog
四、檢查本身在該代碼中分配的內存塊,是否進行了合理的釋放。 內存