我正在寻找一种可靠且简单的模式来并行在 .net core 中使用(执行)后台任务。
我找到了这个 https://stackoverflow.com/a/49814520/1448545 答案,但问题是任务总是只有一个消费者。
如果每 100 毫秒有 1 个新任务要执行,而每个任务需要 500 毫秒才能完成(例如,长时间运行的 API 调用)会怎样。在这种情况下,任务会堆积起来。
如何让它动态化,所以如果BlockingCollection<TaskSettings> _tasks
中有更多的项目,.net核心会动态地创建更多的任务执行者(消费者)?