public static void Sync(params Action[] pars) { if (_totalActive < ConsumerSize) { Init(); } if (pars != null) { var lstTask = new List <Task>(); foreach (var item in pars) { var tsk = Task.Run(() => { bool running = true; QueueProccess.Add(() => { try { item(); } catch (Exception ex) { } running = false; }); while (running) { } }); lstTask.Add(tsk); } Task.WaitAll(lstTask.ToArray()); } }
public static void Async(params Action[] pars) { if (_totalActive < ConsumerSize) { Init(); } if (pars != null) { foreach (var item in pars) { var tsk = Task.Run(() => { QueueProccess.Add(() => { try { item(); } catch (Exception ex) { Console.WriteLine(ex); } }); }); } } }