This header-only library encodes a bitvector class with size fixed at runtime. Atomic operations allow for concurrent access and modification of the bitset. Such a structure can help with coordinating parallel processing of a given fixed set of entities and has the advantage of only requiring O(1) bit per entry. The atomic_bv_t class is a straightforward extension of ConcurrentBitSet from Facebook’s folly C++ library. It wraps the atomic type with a class that allows them to be copied, and these wrapped atomic types are then used to build a vector size of which is determined at runtime.

WWW: https://github.com/ekg/atomicbitvector
