It really depends on if you are talking about the HTTP Connector, or the AJP Connector.
For the HTTP Connector, threads usually have short lives (i.e. they exit after the last Keep-Alive has been handled). Exceptions thrown out of the servlet, and certain HTTP status codes will also end the thread (since the socket stream is likely in an undefined state in these cases). For the AJP Connector, threads usually have long lives. If you haven't configured a connectionTimeout, then they usually last as long as the Apache child that they are talking to does. However, if they get a SocketException on output, then it will exit early (since Apache isn't talking to it anymore). "Rau NF" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] > Hi - Under what conditions can the tomcat thread pool > implementation decide to let a thread exit ? > > Would this happen if some application code threw an > exception and is caught only by the tomcat framework ? > Can it happen if the servlet is writing data out to a > connection and gets a SocketException or one of those > IllegalStateExceptions ? eg., > > 2003-08-22 01:13:11 ApplicationDispatcher[] > Servlet.service() for servlet jsp_servlet.some_jsp > threw exception > java.lang.IllegalStateException: Cannot create a > session after the response has been committed > at > org.apache.coyote.tomcat4.CoyoteRequest.doGetSession(CoyoteRequest.java:1884 ) > at > org.apache.coyote.tomcat4.CoyoteRequest.getSession(CoyoteRequest.java:1731) > > > Thanks > Rau > > > __________________________________ > Do you Yahoo!? > Yahoo! SiteBuilder - Free, easy-to-use web site design software > http://sitebuilder.yahoo.com --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]