ProducerConsumer with AutoResetEvent