如何使用TPL处理长时间运行的进程

时间:2014-06-23 13:55:53

标签: c# task-parallel-library long-running-processes

我最近开始在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 ?

请在上面说明。

1 个答案:

答案 0 :(得分:3)

使用TaskCreationOptions.LongRunning。它适用于长期运行的工作,可能会混淆线程池启发式。从.NET 4.5开始,这总是在新线程上运行代码。您仍然可以使用所有其他TPL功能。