If running this on a computer with more than a single processor (seems most these days have at least 2 processors), the multi-threading issue could get complicated. I don't know how the JVM divides...