chinaunix网友2010-07-26 18:43
你好博主,我搜索到了你的ACE内存泄露的文章,我也遇到了这个问题
根据你的说法是MFC-》WIN32DLL-》ace(win32dll)会泄露,用MFC ->MFCDLL->ace(mfcdll)不会泄露。
(我的环境:VS2005+ACE5.5.6)
我的问题是
MFCapp调用WIN32DLL(DLL中调用ACEwin32dll),在WIN32DLL中提供静态方法调用ACE::init()和ACE::fini(), MFCapp中在进入和退出时调用了这2个静态方法,这时如你文章中说的一样,出现了泄露。
但是让我迷惑的是:我另外做了一个非常简单的WIN32DLL,这个WIN32DLL非常简单,就是用VS2005向导生成的一个WIN32DLL,然后我增加了2个方法调用ACE::init fini,然后在MFCapp中调用该DLL,同样是MFCapp-》WIN32DLL-》ACEwin32dll却没有出现泄露。
由于实际要用的WIN32DLL比较复杂,但是也是win32的,我还不希望改成MFCDLL,不知道为什么用一个简单的dll调aced.dll没有泄露,而用这个要改造的却会泄露。
在这里向博主请教,希望在忙碌中能够答复一下,我为了这个郁闷很久了,
万分感谢!!!!!!!!!!!!
email: 13555965759@139.com