The Java platform is designed from the ground to support concurrent programming, with basic concurrency support in the Java programming language and the Java class libraries. Application servers, however, maintain a pool of worker threads available, rather than creating a thread for every request. This improves performance because thread creation (as well as destruction) does have a significant overhead that is better avoided, especially if your application creates many short-lived threads.
A second advantage of maintaining threads in a pool is that you can control (and possibly limit) the number of threads in your application. Without a centralized pool manager, your system will be heavily dependent on the client requests. ...
No credit card required