Re: Java and multithreading
Do you have the source code? If yes, start looking for the words "Thread" and "Runnable", in particular looking for classes that say "extends Thread" or "implements Runnable". Hopefully, there are good comments, and hopefully the source code is well organized and compact. FIgure out how objects of these classes are created, and look for if statements in that vicinity.
Failing that: If you know the basics of java programming, write yourself a small test program, which spawns a variable number of threads (# of threads could be a command line parameter), and starts each thread. The threads could be doing some mindless compute-intensive task (loop a few million times, doing lots of sines, cosines, square roots, integer multiplication and division, bit shifts, what have you). Arrange the count of operations so they run for a minute or so, which gives you enough time to observe the behavior. Then run that program.
For an expert java programmer (which I'm no longer, having given up on java over a decade ago), this task should take 15 minutes. For a beginner, it's probably an afternoon.
Obviously, you can also search the web to find a pre-built java program that "soaks the CPU".