I'm making a program in java that races a few cars against each other. Each car is a separate thread.
When cars complete the race, each one all calls this method. I've tested the method at varying timer speeds, and it seems to work fine. But I do realize that each thread is accessing the variable carsComplete, sometimes at the exact same time (at least at the scope the date command is giving me).
So my question is: is this method thread-safe?
public static String completeRace() { Date accessDate = new Date(); System.out.println("Cars Complete: " + carsComplete + " Accessed at " + accessDate.toString()); switch(++carsComplete) { case 1: return "1st"; case 2: return "2nd"; case 3: return "3rd"; default: return carsComplete + "th"; } }