我是C ++中使用Heap Allocation的新手。
我正在尝试了解会强制某人创建私有堆而不是使用Process Heap的场景。对于大多数情况,进程堆通常不够吗?
由于 --Ashish
答案 0 :(得分:4)
如果你有一连串的临时堆活动,那么使用私有堆可能比在流程堆上搅拌更快。如果你启动一个线程并给它一个私有堆,它可以在那些堆操作中是线程安全的,而不需要为它们处理锁定。还有其他原因,但这两个是比较常见的原因。
答案 1 :(得分:1)
这是一种使用内存池的简单方法,这对于重新分配非常有用:不是跟踪许多小对象的生命周期并一个接一个地删除它们,而是为它们创建一个单独的堆并在你崩溃时销毁整个堆'完了。