使用循環隊列實現簡單的內存池

初始化:

新建一個循環隊列,

queue_ ;

 

for(inti i=0; i<100; i++)

{

    p = new obj;

    queue_.enqueue(p);

}

 

使用:

 

if (!queue_.empty())

{

     p = queue_.dequeue();    

}

else  // 沒有空餘的就要新建

{

     p = new obj; 

}

 

 

回收:

 

if (queue_.full())  // 回收池已經滿了

{

       p.destroy();

}

else

{

     queue_.enquque(p); 

}

 

清理:

while(queue_.empty()))  //

{

      p = queue_.dequeue();     

      p.destroy();

}

發佈了38 篇原創文章 · 獲贊 6 · 訪問量 13萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章