SmartThreadPool - A .NET Thread Pool fully implemented in C# with many features
https://github.com/amibar/SmartThreadPool
using Amib.Threading; ... SmartThreadPool stp = new SmartThreadPool(); int index = 1; foreach (object[] cols in result) { Console.WriteLine(string.Format(@"进度: {0}/{1}", index, result.Count)); index++; stp.QueueWorkItem(saveReadingReportAsJson, cols, categoryOrder); } stp.WaitForIdle(); stp.Shutdown();