static void WriteResult(CarFinderBase finder) { string path = @"..\..\Files\Result.txt"; if (File.Exists(path)) { string line = finder.FinderName + ";" + finder.CarFound.ToString() + ";" + finder.InitialPosition.ToString() + ";" + finder.Velocity.ToString() + ";" + finder.Position.ToString() + ";" + finder.Ticks.ToString(); using (StreamWriter writer = File.AppendText(path)) { writer.WriteLine(line); } } else { string header = "FinderName;CarFound;InitialPosition;Velocity;Position;Time"; string line = finder.FinderName + ";" + finder.CarFound.ToString() + ";" + finder.InitialPosition.ToString() + ";" + finder.Velocity.ToString() + ";" + finder.Position.ToString() + ";" + finder.Ticks.ToString(); using (StreamWriter writer = File.AppendText(path)) { writer.WriteLine(header); writer.WriteLine(line); } } }
private static void Finder_CarHasBeenFound(object sender, EventArgs e) { lock (obj) { CarFinderBase finder = (CarFinderBase)sender; if (finder != null) { WriteResult(finder); } count--; } }