Exception numa Thread  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
Link_pg
JavaEvangelist
[Avatar]

Membro desde: 28/04/2006 00:17:38
Mensagens: 413
Localização: Praia Grande / São Paulo - SP
Offline

Olá!

Uma dúvida: se eu tenho 2 Threads rodando e em uma delas eu lançar uma exception (que não é tratada em lugar nenhum), ela vai arrear a app inteira ou só a thread em que foi lançada?

Meu palpite é que, como a pilha de execução de métodos é diferente da Thread original, somente a thread que lançou a exceção irá abbendar.

Gostaria de ouvir (ler) alguma outra opinião sobre isso.

Abraços

Eduardo Felipe Vieira

Blog de Tecnologia!
Outro blog meu legal também mas não é de TI.



"Nós poderíamos ser muito melhores se não quiséssemos ser tão bons."
[Email] [WWW] [MSN]
renamed
GUJ Ranger

Membro desde: 21/09/2009 08:47:57
Mensagens: 889
Localização: Rio de Janeiro
Offline

Na verdade vc é "obrigado" a tratar exceções checadas.


Agora se vc lida com exceções não checadas, apenas a thread que a lançou morre!


ok?


flw!
===========================

CV: http://lattes.cnpq.br/7235056457600426
[MSN]
entanglement
GUJ Hacker

Membro desde: 26/09/2009 09:18:56
Mensagens: 5750
Offline

Só como comentário, é por isso que você tem de capturar toda e qualquer exceção em uma rotina chamada por um javax.swing.Timer ou por um java.util.Timer. Se você não fizer isso, como os timers são implementados através de uma thread, a thread do timer acaba "caindo" (sem derrubar a aplicação inteira) e o timer parece que "parou".
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20578
Localização: Curitiba/PR
Offline

Uma boa política também é registrar um uncaughtExceptionHandler para sua aplicação. Ele pelo menos fará o log da exception não capturada, antes da thread morrer. Para fazer isso, faça:



Se sua aplicação for um servlet, ou rodar num servidor, provavelmente o servidor já terá feito isso para você, e terá um log próprio.
Mas se for uma aplicação Swing ou um Applet, fica aí a dica.

This message was edited 1 time. Last update was at 15/01/2010 10:16:46


@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team