多线程分配器

时间:2016-05-06 06:05:13

标签: c++ multithreading memory-management

我在cpp con看到了Alexandrescu allocator Is to Allocation what vector Is to Vexation的有趣话题。我想讨论一些设计主题如何在多线程环境中实现他对分配器的想法。

我发现很多人都说:

  

分配器本身不应该被同步(开销)。代替   每个线程都应该有它的分配器

但是,

如何将我的分配器分配给线程?

一些设计方案:

  1. 通过地图。 key = thread_id,value是allocator。但是随着时间的推移,地图会大量增长,因为死线的id没有被破坏(我认为没有正确的方法可以做到这一点)。
  2. 创建一个'大'分配器的数量,比以往任何时候都要多。但是如果你想要静态内存分配(stack-allocator),这是一个巨大的空间浪费。

0 个答案:

没有答案