首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >tomcat -计时器内存泄漏

tomcat -计时器内存泄漏
EN

Stack Overflow用户
提问于 2012-05-24 02:07:55
回答 3查看 2.4K关注 0票数 1

我目前使用的是tomcat7。我的web应用程序在停止时导致了计时器内存泄漏。日志为:

代码语言:javascript
复制
   SEVERE: A web application appears to have started a TimerThread     
   named [Timer-5] via the java.util.Timer API but has failed to stop it. 
   To prevent a memory leak, the timer (and hence the associated thread) 
   has been forcibly cancelled.   

我没有在我的web应用中使用java.util.Timer

EN

回答 3

Stack Overflow用户

发布于 2012-05-24 08:14:29

这并不一定表明您的代码正在使用java.util.Timer (顺便说一句,由于前面提到的here原因,这在Java webapp中是一个非常糟糕的想法)。此Timer也可以作为webapp的/WEB-INF/lib文件夹中提供的任何库的一部分。显然,一些库在webapp启动时自动注册了一个ServletContextListenerServletContainerInitializer,其中创建了Timer

您需要调查它是哪个库,然后相应地修复/删除它。解压JAR以检查附带的代码,或者逐个删除它们。一旦找到了罪魁祸首,我肯定会向该库的维护者报告,绝对不推荐在Java webapp中使用Timer,他们必须修复它。

票数 2
EN

Stack Overflow用户

发布于 2012-05-25 13:18:47

这一点我不太确定。似乎有一个RMI超时计时器,但所有这些都是Tomcat的一部分,所以不应该是泄漏

票数 0
EN

Stack Overflow用户

发布于 2012-05-25 23:04:50

tomcat wiki中有一个解释(类似于)和一个指向这个bug in commons-pool的链接。

在tomcat >6.0.27中,定时器停止是可选的

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10725498

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档