Implementing a Producer-Consumer scenario using BlockingQueue in Java