首页新闻找找看学习计划

循环开启线程

0
悬赏园豆:10 [已关闭问题] 关闭于 2014-03-26 16:55
  foreach (var str in que)
            {
                if (que.Count < maxThreads)
                {
                    textBox1.Text += str;
                    if (que.Count > 0)
                    {
                        que.Dequeue();
                    }
                }

            }

不能用foreach ,这种应该怎么处理一下呢,我想实现的是从队列中取值然后根据最大线程数开启多少个线程进行验证队列中的值

小龙女-90hou的主页 小龙女-90hou | 初学一级 | 园豆:5
提问于:2014-03-24 17:14
< >
分享
所有回答(3)
0

Semaphore,听过么.?可以控制访问某一段代码的线程数.

http://msdn.microsoft.com/zh-cn/library/system.threading.semaphore%28v=vs.110%29.aspx

只会造轮子 | 园豆:2448 (老鸟四级) | 2014-03-24 17:29
0

用ThreadPool

沧海一杰 | 园豆:28 (初学一级) | 2014-03-24 17:36
0

 要实现foreach必须是继承了IEnumerable接口

cenlo | 园豆:583 (小虾三级) | 2014-03-25 14:39
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册