Boost logo

Boost :

Subject: Re: [boost] [lockfree] freelist_stack::allocate and freelist_stack::deallocate should not be private
From: Tim Blechmann (tim_at_[hidden])
Date: 2012-09-02 08:38:57


>> Currently, the allocate/deallocate functions et.al. in
>> lockfree::detail::freelist_stack are private. This inhibits reusing this
>> class for implementing other lock-free datastructures as it's not possible
>> to allocate anything which has not a constructor taking 0, 1, or 2 arguments
>> (those are supported explicitly by exposing overloads for
>> freelist_stack::construct).
>>
>> Would it be possible to make the mentioned functions 'protected' instead?
>
> hm, i see your point. however freelists are not really part of the
> public API. iac, i'd somehow prefer to have an API like:
> template <class... Args>
> T * construct(Args&&... args)
>
> but for the time being, making these functions protected is ok to me.

hm, really not sure about this, mainly because freelist_stack::allocate
and fixed_size_freelist::allocate have a different interface. but what's
your specific use case?

tim


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk