多线程,是为了更充分的利用计机机多核的运算能力

并行 LINQ (PLINQ) 是 LINQ to Objects 的并行实现。PLINQ 实现完整的 LINQ 标准查询运算符集作为 T:System.Linq 命名空间的扩展方法,并具有用于并行运算的其他运算符。PLINQ 将 LINQ 语法的简洁和可靠性与并行编程的强大功能结合在一起。就像面向任务并行库的代码一样,PLINQ 查询会根据主计算机的能力按比例调整并发程度。

在许多情况下,PLINQ 可通过更有效地使用主计算机上的所有可用内核来显著提高 LINQ to Objects 查询的速度。这一性能提升将使桌面具备高性能计算能力。

使用方法非常简单:items.AsParallel()

var matchedStaff = allStaff.AsParallel().Where(s => s.Matches(searchString));
allStaff.AsParallel().Select(/* something */).ToList();

Parallel Programming with .NET