string str = ""; DataTable dt=new DataTable(); dt.Columns.Add("name", typeof(System.String)); for (int i = 0; i <10000; i++) { DataRow drt = dt.NewRow(); drt[0] = "hh"+i; dt.Rows.Add(drt); } DataRow[] rules = new DataRow[dt.Rows.Count]; dt.Rows.CopyTo(rules, 0); // 第一个 Stopwatch watch1 = new Stopwatch(); watch1.Start(); Parallel.ForEach<DataRow>(rules, (dr) => { str += dr[0]; str += dr[0]; }); watch1.Stop(); txtWat1.Text = watch1.ElapsedMilliseconds.ToString();
普通运算的方法
// 第二个 Stopwatch watch2 = new Stopwatch(); watch2.Start(); for (int i = 0; i < dt.Rows.Count; i++) { DataRow dr = dt.Rows[i]; str += dr[0]; str += dr[0]; } watch2.Stop(); txtWat2.Text = watch2.ElapsedMilliseconds.ToString();
最后的时间对比