Microsoft TPL(任务并行库)与英特尔TBB(线程构建块)

Eya*_*ama 1 c# c++ multithreading tbb task-parallel-library

我的问题是,正如标题所说:在一般水平上(易用性,对发生的事情的控制程度等)你会推荐哪一个小型并行程序?微软的TPL还是英特尔的TBB?

先感谢您

Tud*_*dor 5

不是很容易回答这个问题.TBB是一个C++模板库,而TPL是一个.NET库.假设您可以选择您喜欢的任何语言,它们都提供类似的通用并行结构,主要是:

  • 并行循环:Parallel.For在TPL和parallel_forTBB中
  • 并行任务:Task在TPL和tbb:taskTBB中
  • 各种并发集合
  • 其他并行模式,例如parallel_reduce在TBB中,可以在TPL中用plinq模拟

但同样,根据您选择的语言,您实际上并没有在两者之间做出选择.