原文发布时间为:2011-12-10 —— 来源于本人的百度文章 [由搬家工具导入]
namespace ForEachDemo
{
using System;
using System.IO;
using System.Threading;
using System.Threading.Tasks;
using System.Linq;
using System.Diagnostics;
class SimpleForEach
{
static void Main()
{
// A simple source for demonstration purposes. Modify this path as necessary.
var watch = new Stopwatch();
var list = Enumerable.Range(0, 10);
// Method signature: Parallel.ForEach(IEnumerable<TSource> source, Action<TSource> body)
watch.Start();
Parallel.ForEach(list, item =>
{
try
{
var t = 2 / item;
Console.WriteLine("Processing {0} on thread {1}", item,
Thread.CurrentThread.ManagedThreadId);
}
catch
{
}
} //close lambda expression
); //close method invocation
watch.Stop();
Console.WriteLine(watch.ElapsedMilliseconds);
// Keep the console window open in debug mode.
Console.WriteLine("Processing complete. Press any key to exit.");
Console.ReadKey();
}
}
}