这个问题可能是主观的,但我只想知道何时使用TPL以及何时使用基于 native 线程的同步(evnt,等待句柄)。
本地线程同步技术会过时吗?
谢谢
最佳答案
尽可能使用TPL,因为这是表达对并行性需求的更简洁,更具声明性的方法。
MSDN解释说:“TPL动态扩展并发程度,以最有效地使用所有可用的处理器。此外,TPL处理工作的分区,ThreadPool上的线程调度,取消支持,状态管理和其他功能。低级细节。通过使用TPL,您可以在专注于程序要完成的工作的同时,最大化代码的性能。”
另请参见http://www.albahari.com/threading/part5.aspx,其中详细介绍了“数据并行”的好处和其他TPL的好处。
关于c# - 任务并行库与 native 线程同步,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3985338/