一、任务并行库
任务并行库(Task Parallel Library)是BCL中的一个类库,极大地简化了并行编程,Parallel常用的方法有For/ForEach/Invoke三个静态方法。在C#中for/foreach循环使用十分普遍,如果迭代不依赖与上次迭代的结果时,把迭代放在 不同的处理器上并行处理 将很大地提高运行效率,Parallel.For和Parallel.ForEach就是为这个目的而设计的。
看一个Parallel.For/ForEach的栗子:
static void Main(string[] args) { //Parallel.For 计算0到6的平方 Parallel.For(1, 6, i => { Console.WriteLine($"{i}的平方是{i*i}"); }); //Parallel.ForEach 计算每个字符串的长度 string[] strs = { "We", "hold", "these", "truths" }; Parallel.ForEach(strs, i => Console.WriteLine($"{i}有{i.Length}个字节")); Console.ReadKey(); }