A JSP compilation is mostly a sequential process, and there is little room for multi-threading. I believe javac is not MT also.
I thing the way to reduce turn around time for precompilation is to have simultaneous compilations of unrelated JSP pages. Since deployment with precompilation is supposed to be used only for final deployment, the precompilation time should not matter. Maybe I am wrong here.
As to compilations of JSP pages at request time, if requests are made to different JSP pages at the same time, those pages will be compiled in the respective threads of the requests, and will be done simultaneously.
There have been thoughts about a central compiler server that serves all compilation requests, so that resources (e.g. system jars) can be cached. However since it also introduces synchronization points, the benefits are not obvious.
[Message sent by forum member 'kchung']
http://forums.java.net/jive/thread.jspa?messageID=471559