On 1/4/07, Bela Ban <bela(a)jboss.org> wrote:
I can highly recommend the java.util.concurrent classes of JDK 5,
I've
been porting from concurrent.jar to them in JGroups for the last weeks,
and I get performance optimizations of roughly 10%. Besides, I expect to
scale much better on multi core machines, this requires some additional
work on my behalf though, like lock striping, use of atomic updates
rather than synchronization etc etc etc.
I can highly recommend Brian Goetz' book "Java Concurrency in Practice"
which discusses the java.util.concurrent lib, but also presents tips and
tricks on concurrent programming best practices in general
The executor impl provided in the JDK is slower than a dumb thread
pool, but is otherwise pretty nice. I have added support for it in the
Tomcat connectors (request processor threads would then come from the
executor), so it would be possible in theory to use a global thread
pool for the appserver.
Rémy