【发布时间】:2016-11-12 20:26:46
【问题描述】:
在我的应用程序中,我有许多类可以使用Parallel.For 语句计算它们的任务。每个Parallel.For 都使用自己的ParallelOption 来设置最大并行度。
应用程序流程取决于用户设置,因此存在以下情况:A 类(并行计算)调用 B 类(也并行计算)或调用 C 类(不使用任何并行计算) .
另一种模式是递归调用,在每个递归级别上完成并行计算。
我的问题:
是否可以设置一个全局线程池,所有类都使用它来进行计算,并且线程数可以全局控制以供应用程序使用?
是否可以将线程池与Parallel.For 结合使用,从而使大部分现有代码保持不变?
与独立的 parallel.for 调用相比,线程池需要多少开销(我知道这一切都取决于,到最后我需要做一些测试,但也许你有一些好的和坏的过期和好的建议)
【问题讨论】: