Refactor, using blocking collection.