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

📄 kl_allocator.cpp

📁 使用c语言实现的内存池,并且进行了封装,与stl配合使用,测试效率
💻 CPP
字号:
///
/// @file kl_allocator.cpp
/// @author Kevin Lynx
/// @date 6.12.2008
///
#include "kl_allocator.h"

KL_COMMON_NAMESPACE_BEGIN

static alloc_adapter __alloc_adapter;
static cmMemoryPool __mp;

alloc_adapter::alloc_adapter()
{
	__mp = cmCreate( align, max_bytes );
}

alloc_adapter::~alloc_adapter()
{
	cmRelease( &__mp );
}

void *alloc_adapter::allocate( std::size_t size_bytes )
{
	return size_bytes == 0 ? 0 : cmAllocate( &__mp, (cm_size_t)size_bytes );
}

void alloc_adapter::deallocate( void *p, std::size_t size_bytes )
{
	cmDeallocate( &__mp, p, (cm_size_t)size_bytes );
}

KL_COMMON_NAMESPACE_END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -