任务并行库与本机线程同步

Tal*_*ner 5 c#

这个问题可能是主观的,但我只想知道何时使用TPL以及何时使用基于本机线程的同步(evnts,等待句柄).

本机线程同步技术将在未来过时吗?

谢谢

Ian*_*cer 4

尽可能使用 TPL,因为它是表达并行性需求的更清晰、更具声明性的方式。

MSDN 解释说:“TPL 动态扩展并发程度,以最有效地使用所有可用的处理器。此外,TPL 还处理工作分区、ThreadPool 上线程的调度、取消支持、状态管理等低级细节。通过使用 TPL,您可以最大限度地提高代码性能,同时专注于程序旨在完成的工作。”

另请参阅http://www.albahari.com/threading/part5.aspx,其中详细介绍了“数据并行性”的优点和其他 TPL 优点。