我最近开始在C#中学习 TPL 。我们有一个可以提供某些功能的Windows服务。
I have to perform each job paralelly rather than sequentially.
每项工作将超过10分钟完成。所以,我认为这是长期运行的过程。
所以,我想我不会为此创建ThreadPool,因为它适用于短时间线程。
如何使用TPL处理长时间运行的任务。假设我有100个工作要处理,
Do i need to create 100 tasks for long running process ?
请在上面说明。
答案 0 :(得分:3)
使用TaskCreationOptions.LongRunning
。它适用于长期运行的工作,可能会混淆线程池启发式。从.NET 4.5开始,这总是在新线程上运行代码。您仍然可以使用所有其他TPL功能。