Had to introduce yet another template parameter to have ArrayVector
completely trivially copyable, without burdening other vector
implementations.
LockFree consumer