本文共 491 字,大约阅读时间需要 1 分钟。
void LoadFile(const CString fileName){ CImage img; HRESULT hResult = img.Load(fileName); if (FAILED(hResult)) { ASSERT(0); return algArray; }}
这个函数放在线程里,反复调用,发现出现大量线程退出线程
后来看CImage源码发现,如果发现析构CImage对象时,会有个static变量统计对象个数,当个数为0时,则析构GDI+对象
我也是醉了,这个MFC库的作者埋了这个大的坑。
修正办法:
void LoadFile(const CString fileName){ static CImage img; img.Destroy(); HRESULT hResult = img.Load(fileName); if (FAILED(hResult)) { ASSERT(0); return algArray; }}
转载地址:http://mwmai.baihongyu.com/