using System.Collections; using System.Collections.Generic; namespace Encompass { internal class BitArrayPool { private Stack bitArrays; public BitArrayPool(int capacity) { bitArrays = new Stack(capacity); for (var i = 0; i < capacity; i++) { bitArrays.Push(new BitArray(128)); } } public BitArray Obtain(int size) { var bitArray = bitArrays.Pop(); bitArray.Length = size; bitArray.SetAll(false); return bitArray; } public void Free(BitArray bitArray) { bitArrays.Push(bitArray); } } }