public static async Task executeParallel<T>(this IEnumerable<T> items, int limit, Func<T, Task> actionMethod)
        {
            var allTasks = new List<Task>(); //Store all Tasks
            var activeTasks = new List<Task>();
            foreach (var item in items)
            {
                if (activeTasks.Count >= limit)
                {
                    var completedTask = await Task.WhenAny(activeTasks);
                    activeTasks.Remove(completedTask);
                }
                var task = actionMethod(item);
                allTasks.Add(task);
                activeTasks.Add(task);
            }
            await Task.WhenAll(allTasks); // Wait for all task to complete
        }

public async Task fun(int processId)
{
await Task.Run( () =>{
Random rand = new Random();
Console.WriteLine("Processing " + processId);
Thread.Sleep(rand.Next(1500));
Console.WriteLine("Done processing - " + processId);
});
}   internal async void process(List<int> queue,int limit)
        {
            await queue.executeParallel(limit, fun);
        } https://www.codeproject.com/Tips/1264928/Throttling-Multiple-Tasks-to-Process-Requests-in-C

最新文章

  1. php利用root权限执行shell脚本
  2. 一张图系列——为什么在DllMain里面创建了线程并Wait会卡死
  3. Leetcode: Word Squares &amp;&amp; Summary: Another Important Implementation of Trie(Retrieve all the words with a given Prefix)
  4. ie6对hover兼容性问题的解决:
  5. Windows 10 LTSB
  6. Roman to Integer
  7. javascript 继承、命名空间实现分享
  8. cancel-ng-swipe-right-on-child
  9. socket的accept函数解析
  10. 安卓.点击头像--&gt;编辑个人姓名--&gt;提交后.同时调用js关闭页面--&gt;返回上一层
  11. [Oracle Support]PeopleSoft Support中Fixes,Patches,Bundles,Packs?
  12. cglib代理
  13. 笔记:Maven 配置文件模板
  14. PCD文件格式详解及在PCL下读取PCD文件
  15. 我的代码-statistic analysis
  16. 学习用Node.js和Elasticsearch构建搜索引擎(2):一些检索命令
  17. (PMP)第9章-----项目资源管理
  18. 使用POI导出Excel文件
  19. Python2和Python3中print的不同点
  20. js发送get 、post请求的方法简介

热门文章

  1. C# 之 @ Assembly
  2. 【转】WPF中的窗口的生命周期
  3. 移动端1px问题
  4. bug管理
  5. Badboy录制Jmter脚本
  6. day8数据类型补充,集合,深浅拷贝
  7. JavaEE 之 DBCP
  8. CodeForces 1117C Magic Ship (循环节+二分答案)
  9. Python 面向对象的补充
  10. Django路由详解