Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我的推理是,如果 tcmalloc 维护一个每个线程的空闲列表,从该列表下面可以满足动态分配,那么 tcmalloc 在平均情况下的性能应该非常接近堆栈分配(调整池大小的成本分摊到许多操作)。
这在实际操作中是否成立?有没有我没有想到的退化案例?
堆栈分配由一条机器指令组成 - 更改堆栈指针。很难看到任何其他方案可以达到这种效率。而且您通常通过类似 malloc 的函数(当然有函数调用开销)使用堆栈分配和动态分配来实现不同的目的,因此“更快”的问题是没有实际意义的。