⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 memmgr.h

📁 内存管理程序
💻 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 + -