Understanding how threads operate can yield important performance benefits. Thread per-
formance, though, is not so much about tuning—there are relatively few JVM flags to tweak,
and those few flags have limited effects.
Instead, good thread performance is about following best-practice guidelines for managing
the number of threads and for limiting the effects of synchronization. With the help of appro-
priate profiling and lock analysis tools, applications can be examined and modified so that
threading and locking issues do not negatively affect performance.