The problem is that it's a webapp problem, not a tomcat one, has as been explained quite a few times here. The PermGen can not be flushed that way. Normally, the webapp class datas are garbage collected when they are undeployed/redeployed. However, under certain conditions that depend on the webapp and not tomcat, there is a memory leak. It can be for example the use of java ThreadLocal, that can lead the a tomcat HttpThread holding an object from the webapp, object which hold a reference to his class which holds a reference the his webappClassLoader which itself hold reference to all classes of that webapp. Unless you destroy the HttpThread, you can't clean the webapp classes from memory, it's lost. And no, you can't destroy the HttpThread.
The best suggestion i can give you is to install tomcat on the student's computer, not on a server. That way they do not share their environments. En l'instant précis du 01/23/07 12:46, Ondrej Zizka s'exprimait en ces termes: > Hello, > > I have the common problem with PermGen and Tomcat, see > http://mail-archives.apache.org/mod_mbox/tomcat-users/200606.mbox/[EMAIL > PROTECTED] > > Suppose there is a school server where students (re)deploy their apps, each > of which's classes definitions take about five to ten MB. > Now we have dozens of students, who will deploy at least once, but rather > several times a day. That means the server has to be restarted every few > hours. > > There is no way to automatically flush the PermGen somehow? Or, under which > conditions can the GC collect undeployed app's classes data? > > Thanks, Ondra Zizka > --------------------------------------------------------------------- To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]