64,648
社区成员
发帖
与我相关
我的任务
分享
class MyMemory
{
#define BUFFER_PRE_SIZE 4*1024
private:
list<void*> m_listbuffer; //管理空余缓冲区的链表
list<void*> m_listUsedBuffer; //管理使用的缓冲区
public:
MyMemory(int nSize = 10); //default value:10-4*10k
~MyMemory();
MyMemory(const MyMemory& rhs); //不要实现
MyMemory& operator=(const MyMemory& rhs); //不要实现
bool AllocateBuffer(int nLen = 1); //default value:1*BUFFER_PRE_SIZE,分配后内存指针添加到m_listbuffer
void* GetBuffer(); //default value:1*BUFFER_PRE_SIZE,从m_listbuffer中取出后,添加到m_listUsedBuffer里
bool ReleaseBuffer(void* pUsedBuffer); //default value:1*BUFFER_PRE_SIZE,从m_listUsedBuffer中交还一个缓冲区到m_listbuffer中
void MakeEmpty(); //交还所有的m_listUsedBuffer给m_listbuffer后,清空m_listbuffer.
};