Thread+JPA+Delete

Boa Tarde galera postei aqui no forum Dia 10/12 http://www.guj.com.br/posts/list/227487.java e desde entao estou tentando descobrir como resolvo este problema, ate q deu a luz e tirei a chamada do removeById da Thread que estava e coloquei na Thread Principal do programa e bingo a minha entidade foi removida.

Agora vem minhas duvidas:

Tem Alguma configuração sobre o tempo que uma thread possa durar para esperar um metodo ser processado, ou definir o tamanho de memoria que uma thread possa usar

Pelo que me parece a thread esta morrendo e cancelando o processo de deleção sem dar erro nenhum, isso pode proceder pois o metodo demora mais de 5 minutos ou por memoria que ao executa o metodo de deleção o meu programa vai de 100 megas para 250 de Ram

E como vou atualizar minha Tela Swing sendo que o processo não pode ficar em Thread?

Não.

Não, ela não morre antes do processamento terminar.

Quanto a memória, é possível. Mas o problema ocorreria também em outras threads, e você receberia um OutOfMemoryError. Sua aplicação usa algum parâmetro como -XMX na inicialização da sua VM?

Além disso, não é memória demais não? Talvez seja uma boa rodar um profiler, como o VisualVM, para identificar porque sua aplicação está consumindo tanto.

Use o comando:

[code]EventQueue.invokeLater(
new Runnable() {
@Override
public void run() {
//Aqui vão os comandos de atualização de tela.
//Esse runnable rodará na thread do Swing.
}
}
);

[/code]

[/quote]

Obrigado ViniGodoy por responder

[quote]Quanto a memória, é possível. Mas o problema ocorreria também em outras threads, e você receberia um OutOfMemoryError. Sua aplicação usa algum parâmetro como -XMX na inicialização da sua VM?
[/quote]

Sim uso Xms256 e Xmx1024

Sobre

Minha memoria aumenta quando eu mando excluir minha entidade pelo metodo remove, por tanto porvavelmente nao a vazamento de memoria ja que o metodo remove e o do Entitymanager

E sobre atualizar a tela via[quote]EventQueue.invokeLater(
new Runnable() {
@Override
public void run() {
//Aqui vão os comandos de atualização de tela.
//Esse runnable rodará na thread do Swing.
}
}
);
[/quote]

Não funcionaria pois eu mando o comando para remover o objeto e deixo o JProgressBar com indeterminate

Aproveitando a resposta sua, voce sugere uma outra forma de eu apagar minha entidade? como por exemplo usar query com o comando DELETE uma a uma cada entidade?