成都游戲Coder,記錄游戲開發過程的筆記和心得!
posted on 2009-08-16 19:47 expter 閱讀(2571) 評論(10) 編輯 收藏 引用 所屬分類: 其他學習筆記 、生活筆記 、算法與數據結構
內存池這個東西,除了在頻繁的申請和釋放小塊內存的情況下以外,似乎也沒有多大效率優勢吧。如果單單為了防治內存泄漏啟用內存池,會不會有點得不償失?而且對于服務類軟件,僅僅在軟件結束運行的時候成功釋放掉所有內存這種防泄漏方式,是很不夠的,因為服務一般會運行很長時間。 不過內存池在調試的時候倒是蠻有用的。 回復 更多評論
拜讀了。。。 回復 更多評論
@欲三更 你說的對于服務類軟件,一般都會使用內存池通過空間換取時間,而且分配方式一般會使用靜態分配和動態2種,所以軟件結束這種應該是一般內存池都有的。 而我這里只是重寫new,delete,讓對象可以在靜態塊上進行分配。 回復 更多評論
@expter 你這個重載的new其實不就是個mempool么?只不過分配的空間大小是個常數而已。 回復 更多評論
@欲三更 嗯。。 哇 你那么晚還沒睡覺 回復 更多評論
你能確保你的block一定適合任意大小的對象? char store[ 100 ];這個一定夠用? 而且這樣內存無疑會有巨大浪費,除非能動態配置大小. 回復 更多評論
@absolute 呵呵,我又來了:P 在只有debug使用的情況下,選個大差不差的常數就好了,狼不浪費其實也沒什么關系,我自己要是搞這種東西一般都是為了查查內存泄露什么的 回復 更多評論
重載NEW唯一壞處是線程不安全。 回復 更多評論
啊按時打算的 回復 更多評論
你的留言板在哪里!我已做好你的鏈接,有空去寫寫書啊!為了中國it業的共同發展! 回復 更多評論
Powered by: C++博客 Copyright © expter