上次我们使用AutoResetEvent实现了一个生产/消费者队列。这一次我们要使用Wait和Pulse方法来实现一个更强大的版本,它允许多个消费者,每一个消费者都在自己的线程中运行。 我们使用数组来跟踪线程。 Thread[] _workers; 通过跟踪线程可以让我们在所有的线程都结束后再结束我们的队列任务。 每一个消费者线程都执行一个叫做Consume的方法,在一个for循环中,我们可以创建和启动线程。例如: 代码如下: public PCQueue(int workerCount) { _workers = new Thread[wor