
On 22/08/2011 6:13 PM, Hartmut Kaiser wrote:
The general interest was to have a more diverse set of data structures available, such as a lock-free linked list or bounded and fixed-sized data structures.
I've been sitting on a lock-free doubly-linked list, perhaps there's interest in porting it to boost. It's ABA problem free using only a 32-bit CAS. It's built off of a lock-free memory manager that could serve as the foundation for other container types (map, unordered map, bag). The doubly-linked list, algorithm supports parallelism for disjoint accesses so contention can decrease as the list size increases: https://github.com/Kometes/Honeycomb/blob/master/Honeycomb/Src/Common/Inc/Th... The memory manager, expands to meet demand and recycles its nodes: https://github.com/Kometes/Honeycomb/blob/master/Honeycomb/Src/Common/Inc/Th... Test code: https://github.com/Kometes/Honeycomb/blob/master/Editor/Src/Win/Src/Misc/Tes... It's tested on x86 compiling with VS2010/11.