Почему boost :: fast_pool_allocator построен поверх одноэлементного пула, а не отдельного пула на экземпляр распределителя? Или, другими словами, зачем только предоставлять это, а не возможность иметь пул на распределитель? Будет ли это плохой идеей?
У меня есть класс, который внутренне использует около 10 различных типов boost :: unordered_map. Если бы я использовал std :: allocator, тогда вся память возвращалась бы в систему, когда она вызывала delete, тогда как теперь мне нужно вызывать release_memory для многих различных типов распределителей в какой-то момент.
Я был бы глуп, чтобы бросить мой собственный распределитель, который использует пул вместо singleton_pool?
спасибо