Log4j: Como chamar o NDC.remove() em uma app web?

Pessoal,

a api do log4j diz que é importante chamar o método NDC.remove() no final do método run de cada thread da aplicação, de forma a garantir que a thread possa ser removida da memória. Mas numa app web não é o programador que cria as threads, então como fazer para evitar que as threads fiquem ocupando memória à toa no servidor?
Obrigada,
:?

Bom, certamente se há algum problema desse tipo os desenvolvedores já se preocuparam com isso.

Muito confiante… :wink:
O tomcat talvez até faça, por ser o log4j um projeto jakarta. Mas suponha que eu use um outro container, e use o log4j incorporado na minha app. Será que o mais provável não é o log4j acabar devorando memória sem que eu nada possa fazer a respeito, já que quem controla minhas threads é o container?

O JBoss usa o Log4J internamente. Já usamos Log4J com o OC4J da Oracle. Nunca tivemos problemas.

Resolvi postar na lista do próprio log4j e alguém me deu uma sugestão tão óbvia…
Colocar o remove() no final do doGet/doPost, que são executados em cada thread separadamente…
Como nunca vi o remove em nenhum exemplo, essa solução não me veio a cabeça.
:oops:
De qualquer forma essa “obrigação” de lembrar de chamar o remove está me soando a alocação de memória em C++… arghhhh…