Detected memory leaks!
我在主线程中创建了两个子线程,调试的时候在IDE的输出窗口中老是这样:
The thread 0x8F0 has exited with code 0 (0x0).
The thread 0xAF8 has exited with code 0 (0x0).
The thread 0x82C has exited with code 0 (0x0).
The thread 0xFD0 has exited with code 0 (0x0).
The thread 0x250 has exited with code 0 (0x0).
Detected memory leaks!
Dumping objects ->
thrdcore.cpp(166) : {520} client block at 0x00E66598, subtype 0, 108 bytes long.
a CWinThread object at $00E66598, 108 bytes long
Object dump complete.
哪位有好点的调试方法?
[解决办法]
你delete了吗?
[解决办法]
下载一个 BoundsCheck 能告诉你是哪条指令造成的内存泄露,它可以检测到vc检测不到的内存泄露
[解决办法]
原因是这些thread是被你强制关闭得而不是它自动结束得
当线程自己结束时,它会释放一堆东西,包括线程自己,如果你不让线程自己结束,相关内存就泄漏了。
CWinThread对象一般不需要手工释放,因为CWinThread::m_bAutoDelete缺省被设置为TRUE,这样线程结束时会释放它