6

在我的 Windows 的 C++ 程序中,我通过调用new CMyClass()在堆上分配了几个小对象(数千个)

性能似乎因此受到影响。

有没有办法在堆中预先分配一些最小内存供程序使用,以便操作系统在我调用new CMyClass()以提高性能时开始从这个预先分配的空间分配?

谢谢。

4

1 回答 1

9

您似乎正在寻找一个内存池- http://www.codeproject.com/Articles/27487/Why-to-use-memory-pool-and-how-to-implement-it

请注意,您可以预先分配一些内存,然后使用placement new 来防止多次分配。

于 2012-05-18T12:23:36.597 回答