Boost logo

Boost :

Subject: Re: [boost] threadpool lockfree_channel
From: Anthony Williams (anthony.ajw_at_[hidden])
Date: 2009-03-16 09:43:30

Tim Blechmann <tim_at_[hidden]> writes:

>> Since you are using tagged pointers, you could increment the tag value
>> whenever you reuse a node, which will at least ensure that the CAS in
> thanks for noting this issue! i will apply a fix for it later ...
>> Alternatively, you could use hazard pointers, reference-counted
>> pointers (as per the implementation I posted), reference counting on
>> the whole queue (last one out deletes any dequeued nodes), or another
>> memory reclamation scheme.
> i have an implementation of the `pass-the-buck' algorithm for memory
> reclamation, but from my understanding both `pass-the-buck' and
> `smr'/hazard pointers may be patented :(

Hazard pointers are definitely patented. I don't know the state of


Anthony Williams
Author of C++ Concurrency in Action |
Custom Software Development |
Just Software Solutions Ltd, Registered in England, Company Number 5478976.
Registered Office: 15 Carrallack Mews, St Just, Cornwall, TR19 7UL, UK

Boost list run by bdawes at, gregod at, cpdaniel at, john at