working producer-consumer