Dlaczego boost :: fast_pool_allocator został zbudowany na szczycie pojedynczej puli, a nie osobna pula na instancję przydziału? Lub mówiąc inaczej, dlaczego tylko to zapewnia, a nie opcja posiadania puli na jednego przydziału? Czy to byłby zły pomysł?boost pool_alloc
Mam klasę, która używa wewnętrznie około 10 różnych typów boost :: unordered_map. Gdybym użył std :: allocator, wtedy cała pamięć wróciłaby do systemu, gdy nazywa się delete, podczas gdy teraz muszę w pewnym momencie wywołać release_memory na wielu różnych typach alokatorów. Czy byłbym głupi, aby przetasować mój własny przydział, który używa puli zamiast singleton_pool?
dzięki
Hmm, błędy kosza mój ostatni komentarz. Dziękuję za wyjaśnienie. Być może uda mi się uciec, jeśli będę trzymał się opcji unordered_map i unikam unordered_map :: operator = lub unordered_map :: swap –
To zmieni się w C++ 0x. –