adding a blocking collection implementation, need to measure impact