public List <List <SalaryResultDTO> > calcSalaryForAll(List <Employee> emp) { log("Start výpočtu"); int index = 0; List <Thread> threads = new List <Thread>(); foreach (Employee e in emp) { //threads.Add(new Thread(delegate () { calcSalaryForEmployee(e); })); log("Start Thread[" + index + "]"); threads.Add(new Thread(delegate() { plugin.calcSalaryForEmployee(e); })); index++; threads[index - 1].Start(); } index = 0; foreach (Thread t in threads) { t.Join(); log("Ukonćen Thread[" + index + "]"); index++; } log("Výpočet ukončen"); return(plugin.resultList); }