A concurrent lock-free vector would be nice-to-have - i just found one paper you might already know 'Lock-free Dynamically Resizeable Arrays' 2006 (Dechev, Pirkelbauer, Stroustrup) ? Its a good read. I like your approach, too. ATM i'm trying smth. with a short singly-linked-list and chunks that can vary in size - grow & shrink and where adjacent nodes can be merged. Sizes range from 1..65Kb and a simple 'compression' of unused slots. It might get interesting when the use-case is less about adding/removing single members, but rather adding/removing parts-of other vectors/ranges-of-values into one vector.
A concurrent lock-free vector would be nice-to-have - i just found one paper you might already know 'Lock-free Dynamically Resizeable Arrays' 2006 (Dechev, Pirkelbauer, Stroustrup) ? Its a good read. I like your approach, too. ATM i'm trying smth. with a short singly-linked-list and chunks that can vary in size - grow & shrink and where adjacent nodes can be merged. Sizes range from 1..65Kb and a simple 'compression' of unused slots. It might get interesting when the use-case is less about adding/removing single members, but rather adding/removing parts-of other vectors/ranges-of-values into one vector.
greets, andreas