Update producer consumer problem implementation with blockingShared Queue