static Thread CreateThreadForResolvingProblem(Problem problem, ResolverBase resolver) { return(new Thread(() => { ResolveProblem(problem, resolver); })); }
static void ResolveProblem(Problem problem, ResolverBase resolver) { var recordsLists = new List <Record> [10]; for (int i = 0; i < 10; i++) { recordsLists[i] = resolver.ResolveProblem(); Console.WriteLine(i + "___" + problem.FileName + "_" + resolver.Name); } string currentDirectory = AppDomain.CurrentDomain.BaseDirectory; string filePath = Path.Combine(currentDirectory, "output", problem.FileName + "_" + resolver.Name + ".csv"); using (StreamWriter writer = File.CreateText(filePath)) { writer.Write("id;"); for (int i = 0; i < 10; i++) { writer.Write($"best_{i + 1};avg_{i + 1};worst_{i + 1}"); if (i != 9) { writer.Write(";"); } } writer.WriteLine(); for (int i = 0; i < recordsLists[0].Count; i++) { writer.Write(i + ";"); for (int j = 0; j < 10; j++) { writer.Write(recordsLists[j][i].Best + ";" + recordsLists[j][i].Avg + ";" + recordsLists[j][i].Worst); if (j != 9) { writer.Write(";"); } } writer.WriteLine(); } } Console.WriteLine(filePath); }