📄 memmgr.h
字号:
#ifndef _MEMMGR_H_
#define _MEMMGR_H_
#undef MAX_MEM_BLOCK
#define MAX_MEM_BLOCK (1600) /* 保存在内存池的最大字节数*/
#undef OFFSETSIZE
#define OFFSETSIZE 4
#undef MEMALIGN
#define MEMALIGN(a) ((a|((1<<OFFSETSIZE)-1))+1) //up grow
//内存管理器,支持多线程
#define SUPORT_MTHREAD
#include "seclock.h"
#include "globaldef.h"
#include "log.h"
#include "stdlib.h"
#include "memalloc.h"
class memmgr
{
public:
memmgr();
virtual ~memmgr();
public:
//释放内存
void Free (void* blk);
//分配内存
BYTE* Alloc(UINT bytes);
void Load(const char *filename);
void Save(const char *filename);
private:
//内存位置存储表
BYTE* m_Cache[MAX_MEM_BLOCK>>OFFSETSIZE];
void VerifyMem(char *x);
static void ASSERT_MyMemBlock(void* block);
seclock m_lock;
};
#ifdef _DEBUG
#define MEMMGR_SIZE_D 4
#else
#define MEMMGR_SIZE_D 0
#endif
extern memmgr g_pMemManger;//内存管理器
//内存分配
extern BYTE *MyMemAlloc(UINT bytes);
//内存释放
extern void MyMemFree(void* block);
#endif // MEMMGR_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -