社区
进程/线程/DLL
帖子详情
FreeLibrary后,怎么看有没有内存泄漏
vc_nj
2010-11-06 01:06:24
FreeLibrary后,如何看我内存有没有泄漏呢,我在dll里定义了一个类, 然后在里面定义了几个对象,这些对象内部分配的内存,都在各自解析函数里有释放,但是,我FreeLibrary后,这些对象就退出释放内存了吗
...全文
178
6
打赏
收藏
FreeLibrary后,怎么看有没有内存泄漏
FreeLibrary后,如何看我内存有没有泄漏呢,我在dll里定义了一个类, 然后在里面定义了几个对象,这些对象内部分配的内存,都在各自解析函数里有释放,但是,我FreeLibrary后,这些对象就退出释放内存了吗
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
vc_nj
2010-11-12
打赏
举报
回复
freelibrary后,我的断点跑不进去
szgrape
2010-11-06
打赏
举报
回复
设个断点跑一跑,看能不能进去析构里不就可以知道了
vc_nj
2010-11-06
打赏
举报
回复
// CGrobal.h
class CGrobal
{
public:
CGrobal();
~CGrobal();
void Create(int sz);
private:
char *m_pData;
int size;
};
// CGrobal.cpp
#include "Grobal.h"
CGrobal g_Grobal;
_declspec(dllexport) void Init(int size)
{
g_Grobal.Create(size);
}
CGrobal::CGrobal()
{
size = 0;
m_pData = NULL;
}
CGrobal::~CGrobal()
{
if(m_pData)
{
delete m_pData;
m_pData = NULL;
}
}
void CGrobal::Create(int sz)
{
m_pData = new char[sz];
memset(m_pData, 0, sz * sizeof(char));
size = sz;
}
//////////////////////////////////////////////////////////
以下调用dll
调用1 :
HINSTANCE h1 = LoadLibrary("GROBAL.dll");
.....
Init(5);
.....
FreeLibrary(h1);
调用2 :
HINSTANCE h1 = LoadLibrary("GROBAL.dll");
.....
Init(5);
.....
{
HINSTANCE h2 = LoadLibrary("GROBAL.dll");
......
Init(10);
......
FreeLibrary(h2);
}
.....
FreeLibrary(h1);
// 以上调用的2个例子有内存泄露吗
brent1901
2010-11-06
打赏
举报
回复
FreeLibrary 后引用数 -1
qsycn
2010-11-06
打赏
举报
回复
可用BoundsChecker查看
由于在析构中释放,FreeLibrary后对象退出时会释放内存
windows程序设计使用指南-dll和内存管理
windows程序设计使用指南-dll和内存管理 windows程序设计使用指南-dll和内存管理
内存DLL操作|内存DLL操作支持库
内存DLL操作支持库|内存DLL操作支持库
内存的释放
可以帮助释放内存,加快系统速度
delphi设计的内存中运行程序
delphi设计的内存中运行程序,值得大家学习
易语言LoadMemDll源码,易语言从内存加载DLL
易语言从内存加载DLL源码,从内存加载DLL,LoadMem
Library
,
Free
Mem
Library
,GetMemProcAddress,myMessageBox
进程/线程/DLL
15,473
社区成员
49,171
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章