Tomcat + Thread = Java Heap

Por favor,

eu tenho um sistema que processa arquivos XML da anatel, para cada arquivo que é enviado pelo upload eu lanço uma thread que fica processando ele gravando as informações no banco de dados !!!

Mais quanto eu tenho uns 8 ou 10 threads rodando, o Java está lançando uma Java Heap Space, a principió pensei que este erro estava relacionado a memoria e hd do servidor, mais isso não é o problema o servidor tem ambos de sobra !!!

Então oque acontece ??? o tomcat tem um limite de Threads para rodar ??? eu devo controlar isso ??? mais mesmo assim eu acho que não tem muito sentido ele so aceitar 10 threads se o servidor tem memoria de sobra !!!

a) Por acaso seu arquivo está todo na memória? Pode ser que seja ele o responsável por esse problema.
b) “Ter memória de sobra” só se você configurou corretamente os parâmetros de execução do Java. Por padrão ele não usa TODA a memória da sua máquina; você precisa passar -Xmx e a quantidade de memória que você precisa deixar disponível. (veja o script de inicialização do Tomcat).