1 #ifndef Tracker_ChurnAllocator_H
2 #define Tracker_ChurnAllocator_H
9 using Base = std::allocator<T>;
19 static thread_local
Cache local;
24 template<
typename _Tp1>
34 c.
cache = std::allocator<T>::allocate(n, hint);
42 else std::allocator<T>::deallocate(p, n);
churn_allocator(const churn_allocator< U > &a) noexcept
typename Base::pointer pointer
churn_allocator< _Tp1 > other
pointer allocate(size_type n, const void *hint=0)
typename Base::size_type size_type
void deallocate(pointer p, size_type n)
churn_allocator()=default