> First, I don't know if it's killing a thread is the right approach.
Should
I do that, without shutdown Tomcat ?

If you must have an endless loop, here is a way to kill it.

try
{
   while (true)
   {
     // inside infinite loop
   }
}
catch (InterruptedException)
{
}

When you want the thread to be killed, just call it's interrupt() method.
This will catch the exception outside the loop and terminate.

Just a suggestion...

Jason E. Brawner
Silenus Group



                                                                                       
                            
                    William                                                            
                            
                    Kaufman              To:     "'[EMAIL PROTECTED]'"    
                            
                    <WKaufman@viq        <[EMAIL PROTECTED]>              
                            
                    uity.com>            cc:                                           
                            
                                         Subject:     RE: Killing endless loop servlet 
- howto ? killing JVM or    
                    07/02/2001           unload       class ?                          
                            
                    10:11 AM                                                           
                            
                    Please                                                             
                            
                    respond to                                                         
                            
                    tomcat-user                                                        
                            
                                                                                       
                            
                                                                                       
                            




OK, no one's answered this yet, so,...

> First, I don't know if it's killing a thread is the right approach.
Should
I do that, without shutdown Tomcat ?

So, why are you creating an infinite loop?  I mean, if you didn't, you
wouldn't have to kill it.

If you're generally asking how one can kill threads in Java, you could use
java.lang.Thread.stop() (but read the deprecation warning).  But as a rule,
not creating infinite loops is a much better strategy.

> Is there a way to set a 'time-out' for a Servlet ?

Not the way you mean.  You can set a timeout for a session (by modifying
your web.xml); but AFAIK, the only way to set a timeout for a request would
be on your browser.

                                        -- Bill K.

-----Original Message-----
From: Renato Weiner [mailto:[EMAIL PROTECTED]]
Sent: Monday, July 02, 2001 6:03 AM
To: [EMAIL PROTECTED]
Subject: Killing endless loop servlet - howto ? killing JVM or unload class
?


Hi all,
I'm rolling out a successful Tomcat instalation in a shared environment (
it's a great software ! ). But I have a concern.
I created a servlet that loops forever ( a very stupid one, by the way ).
When I executed it, it allocates a Tomcat thread and it just runs forever.
If I try to kill it after it consumed, let's say, 30 seconds of processing,
it ended up killing the whole JVM.
First, I don't know if it's killing a thread is the right approach. Should
I
do that, without shutdown Tomcat ? Is there a way to set a 'time-out' for a
Servlet ? What I can doin this situation ? Is there an Interceptor that can
unload this class somehow ?
Thanks in advance
Renato - Brazil
P.S. I'm running Linux, kernel 2.4.3, Tomcat 3.2.2




Do You Yahoo!?
Get personalized email addresses from Yahoo! Mail - only $35 a year!
http://personal.mail.yahoo.com/




Reply via email to