谢谢大家,是不是winform的问题?

解决方案 »

  1.   

    我想楼主没有理解ThreadPool.QueueUserWorkItem的意思,这个方法是要把要做的事情在一条后台线程排队去处理,还有你的doneEvents在这里你根本没用它去同步
    ThreadPool.QueueUserWorkItem(new   WaitCallback(ViewCodeNumber),_path);//不知道你的_path是什么变量,但这里你必须想办法传入doneEvents[i]ThreadPool.QueueUserWorkItem(new   WaitCallback(ViewCodeNumber),doneEvents[i]); //传入doneEvents[i],在ViewCodeNumber里面发出通知信号,以释放WaitHandle按你的本意,这里你不应该使用线程池,而应该每次都开一条新线程,这样WaitHandle.WaitAll(doneEvents)才合理