Tomcat在停止或者重新部署应用时可能存在内存泄漏。 以下面的地址中,尝试列出它们,并解释在什么情况下可以检测并修复泄漏。
http://wiki.apache.org/tomcat/MemoryLeakProtection
Leak cause | Detected by tomcat | Fixed by tomcat | Possible enhancements |
>=6.0.24 | >= 7.0.6 | ||
>=6.0.24 | >= 7.0.6 | ||
Webapp class instance indirectly held through a ThreadLocal value | no | >= 7.0.6 | |
>=6.0.24 | >= 7.0.6 | ||
>=6.0.24 | In 6.0.24-6.0.26 TimerThread are stopped but it may lead to problems. Optional from 6.0.27 with the clearReferencesStopTimerThreads flag. Other threads may be stopped with the clearReferencesStopThreads flag, but it's unsafe. | Fix the application to stop the thread when the application is stopped | |
ContextClassLoader / Threads spawned by classes loaded by the common classloader | >=6.0.24 | In 6.0.24-6.0.26 TimerThread are stopped but it may lead to problems. Optional from 6.0.27 with the clearReferencesStopTimerThreads flag. Other threads may be stopped with the clearReferencesStopThreads flag, but it's unsafe. | Fix the offending code (set the correct CCL when spawning the thread) |
no | >=6.0.24 pre-spawns some known offenders | ||
no | > 6.0.? . Disabled by default with tomcat 7 | ||
> 6.0.? | |||
> 6.0.? | > 6.0.? | ||
> 6.0.? |