Producer Consumer with blocking queue