> is the thread mentioned in 2b the same as the one that handled 2a ?

Yep, same thread.

----------------------------------------------
Christian Cryder
Internet Architect, ATMReports.com
Project Chair, BarracudaMVC - http://barracudamvc.org
----------------------------------------------
"Coffee? I could quit anytime, just not today"


> -----Original Message-----
> From: Hans [mailto:[EMAIL PROTECTED]
> Sent: Friday, March 19, 2004 8:21 AM
> To: Tomcat Users List
> Subject: Re: thread deadlock problem
>
>
> hi,
> is the thread mentioned in 2b the same as the one that handled 2a ?
>
> grtz
> Hans
>
> At 07:55 19/03/2004 -0500, you wrote:
> >Hi folks,
> >
> >I need to know if someone can explain the following behavior:
> >
> >1. client browser issues a request
> >2. tomcat servlet code starts handling the request...
> >     a. writes an html redirect to the resp, flushes the buffer, etc
> >     b. thread continues processing (writing to a data structure)
> >3. client browser receives 2a response and generates another request...
> >     a. reads data out of the data structure populated by 2b
> >
> >What's happening is that 2b fills up the structure and then
> blocks, waiting
> >until 3a reads some of the data out, so that it can continue.
> The blocking
> >code looks like this:
> >
> >     ...check to see if data pipe still full
> >     ...timeout if we've waited too long
> >
> >     notifyAll();
> >     try {
> >         wait(1000);
> >         Thread.yield();
> >     } catch (InterruptedException ex) {
> >         throw new java.io.InterruptedIOException();
> >     }
> >
> >Now what is happening is that in certain situations, the request for 3a
> >never gets accepted by the server until 2b times out. I'm trying to
> >understand why (and what to do about it). I have verified that the client
> >not only receives the response from 2a, but it actually issues
> the request
> >for 3a. Nevertheless, once Tomcat is in this blocking code
> (above) it does
> >not seem to accept requests from this particular browser window,
> -UNTIL- 2b
> >times out.
> >
> >Can anyone explain this to me? Should I be blocking/yielding in
> some other
> >fashion? Why won't Tomcat accept my subsequent requests when I'm in this
> >blocking code?
> >
> >What I'm looking for more than just "that's a stupid thing to do" - I'm
> >hoping someone can either
> >
> >a) explain the nitty-gritty of how tomcat handles writing the
> code back to
> >the browser (and telling the browser that everything is complete) in the
> >case where the thread may actually need to continue running for a longer
> >period of time -or-
> >
> >b) offer some constructive suggestions as to where I should
> start looking in
> >the tomcat code to answer those questions myself
> >
> >Any suggestions would be greatly appreciated...
> >
> >tia,
> >Christian
> >----------------------------------------------
> >Christian Cryder
> >Internet Architect, ATMReports.com
> >Project Chair, BarracudaMVC - http://barracudamvc.org
> >----------------------------------------------
> >"Coffee? I could quit anytime, just not today"
> >
> >
> >---------------------------------------------------------------------
> >To unsubscribe, e-mail: [EMAIL PROTECTED]
> >For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
> >---------------------------------------------------------------------
> >To unsubscribe, e-mail: [EMAIL PROTECTED]
> >For additional commands, e-mail: [EMAIL PROTECTED]
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to