有没有办法配置jboss在线程执行结束时清除ThreadLocal变量?

时间:2012-07-24 12:51:56

标签: java java-ee threadpool jboss5.x thread-local

我正在 Jboss AS 5.1.0.GA 下部署Web应用程序,在我的应用程序中,我使用了一些java.lang.Threadlocal变量。根据定义,java.lang.Threadlocal变量应该在线程执行结束时清除。对于Application Server,由于它使用线程池,因此不会清除java.lang.Threadlocal变量。

您知道如何配置Jboss AS 5来清除这些 java.lang.Threadlocal 变量吗?我已经用Google搜索了,我没有发现任何有趣的东西。我正在寻找 Jboss 5 的解决方案,而不是 Jboss 6

2 个答案:

答案 0 :(得分:0)

你是否从jboss获得了关于无法删除threadlocal的原因?如果存在这样的问题,我会感到惊讶。

答案 1 :(得分:0)

你可以创建Context Listener并覆盖ContextDestroyed或创建servlet并覆盖destroy方法,在override方法中清理你的线程