2016-02-11 12:16 GMT+01:00 Mark Thomas <ma...@apache.org>: > On 11/02/2016 11:07, Thomas Boniface wrote: > > Hi, > > > > I'm using async servlet with a timeout configured to 300ms but I can > > observe in live environnement some big differences with the actual > applied > > timeout 700ms or more for instance. > > > > I was wondering how are triggered onTimeout events to AsyncListeners, is > > there a limited number of thread handling this ? Could this be explained > by > > too many onTimeout occuring concurrently on a busy server ? > > Timeouts are only checked once a second. > That's explains this use case indeed.
> > > I also wonder what can be done or not while in the onTimeout thread, can > I > > still do some asynchronous operation (retrieving content from http > request) > > and is writing to the reponse from this thread, as long as I ensured this > > done in a thread safe way, ok ? > > This is all in the Servlet spec. > I'll study the spec, I spent a lot of time looking for some documentation without thinking of reading the specs themselves, my bad. > > In summary: > - You can perform any operation that is valid for a request in async mode. > This will have no impact on other request onTimeout triggering no matter what I do within the onTimeout ? > - You MUST call complete() or dispatch() before exiting onTimeout(). > If the onTimeout occurs but another thread created by the same request is already writing the response I assume this thread will call complete() and the onTimeout thread must not do anything ? > > Mark > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > For additional commands, e-mail: users-h...@tomcat.apache.org > >