何时应该优先使用对象池而不是动态分配的对象?
我需要每秒创建和销毁成千上万个对象。这本身就足以决定支持使用对象池吗?
谢谢。
何时应该优先使用对象池而不是动态分配的对象?
我需要每秒创建和销毁成千上万个对象。这本身就足以决定支持使用对象池吗?
谢谢。
是的,这足以支持使用对象池。
引用Boost文档
何时应该使用对象池?
当需要大量分配和释放小对象时,通常会使用对象池。另一个常见用途是上面提到的情况,即可能有许多对象被删除。
请参阅Boost Pool库。
测量、测量、再测量。这样你就会知道,而不必依赖猜测或指导方针。
另外,如果Dirk Grunwald的CustomMalloc还可用,可以尝试一下。它能合成一个适用于单个应用需求的malloc
实现。