Sorry the Script might not do what it should. But that's not the important thing. Just select a script, that occupies Zope quite some time (e.g. long running <dtml-in>). The try to call another page on the site. Does ist appear?
Below I've changed the script a little. It might work (sorry can't test because my home implementation of Zope isn't up & running yet). Please start it in a Folder with manny Subfloders (big site).
Well, you also could use <dtml-in "_.range(999)"> <dtml-in "_.range(999)"> <dtml-in "_.range(999)"> <dtml-in "_.range(999)"> X </dtml-in> </dtml-in> </dtml-in> </dtml-in> Just for fun I tested this on a linux machine, with a result which confuses me, here's what I did (Zope 2.3.3): Lets call the above method "stopper", for brevity. (-1.) Restart zope 0. Create stopper 1. Start top on a console. 2. start one stopper-thread by "view"ing it in a new window. 3. top shows one python thread at 99% CPU 4. try some "innocent" pages on this server, they work seamlessly 5. start another stopper-thread by "view"ing it again in a new window 6. top shows two python threads at 50% CPU 7. zope ceases answering any other request 8. stop the "downloading" of stopper created in step 2 9. zope works again, but top shows 2 CPU-consuming threads as before 10. press reload in the browser you stopped in step 8. 11. zope ceases to answer any requests, top shows 3 CPU-consuming threads 12. repeat 8, zope works again, the 3 threads remain 13. repeat 8 again, we now see 4 threads in zope, zope reaches the default thread limit and won't answer until restarted or the threads stop. Obvious questions: What happens at 7.? Why isn't it possible for zope to stop the processing when it looses the connection? I tested the same with a perl cpu-hogging cgi: #!/usr/bin/perl print "Content-type: text/html\n\n"; for ($i;$i<10000;++$i){ for($j;$j<10000000;++$j){$a=$a+sin $j} $b = sin $i*$a; print "$b <BR>"; }; This script runs plenty enough on the command line, but stops after around 5s when I hit the stop button on the browser when it's run as a cgi. Heck I even pulled the network cable on the client after zope ignored me closing all browsers - no effect, the 4 threads still run on (12min CPU per thread). Bonus question: Why is there a limit on range? ;-) cheers, oliver