foreach (var str in que) { if (que.Count < maxThreads) { textBox1.Text += str; if (que.Count > 0) { que.Dequeue(); } } }
不能用foreach ,这种应该怎么处理一下呢,我想实现的是从队列中取值然后根据最大线程数开启多少个线程进行验证队列中的值
Semaphore,听过么.?可以控制访问某一段代码的线程数.
http://msdn.microsoft.com/zh-cn/library/system.threading.semaphore%28v=vs.110%29.aspx
用ThreadPool
要实现foreach必须是继承了IEnumerable接口