来自不同进程的ThreadPools

时间:2011-10-03 08:42:37

标签: .net performance threadpool task-parallel-library

任务并行库是ThreadPool的一个很好的包装器,可以确保所有内核的最佳使用。这意味着不仅要生成线程,还要限制活动线程的数量,以免因过多的活动线程而使系统崩溃。例如,两个并发的Parallel.ForEach()不会导致8核心机器上的16个活动线程。将有8个活动线程,两个ForEach()的工作将在它们之间进行平衡。但这种平衡在流程层面上起作用。整个系统怎么样? 我担心使用TPL运行2个或更多我的CPU绑定应用程序实例时可能会出现争用。问题是:从性能的角度来看,是否可以使用许多并发的CPU绑定应用程序,还是值得将所有逻辑移动到一个进程并使用PTL工作平衡?

0 个答案:

没有答案