| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/10/2007 20:59:09
|
CarlosEduardoDantas
GUJ Master
![[Avatar]](/images/avatar/dc33e31c39c141adff52d67a0718b867.jpg)
Membro desde: 13/11/2006 15:26:38
Mensagens: 1089
Offline
|
este codigo lança uma exceção IllegalMonitorStateException ...
como que eu consertaria esse codigo para nao gerar essa exceção?
This message was edited 1 time. Last update was at 29/10/2007 12:07:59
|
'Nós somos o que repetidamente fazemos. Excelência, então, não é um ato, mas um hábito'.
Aristóteles.
carloseduardoxp |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/10/2007 08:40:24
|
LPJava
GUJ Hacker
Membro desde: 18/04/2006 12:50:23
Mensagens: 5524
Localização: Bahia/Porto Alegre
Offline
|
observe que os objetos são diferentes na sincronização.. um é da instancia e outro é static.. um nao bloqueia o outro..
Bom essa questao é do whizlabs eu errei.. mais a melhor pessoa que eu conheço aqui no forum que daria uma boa aula disso ai é o vinny, hehe.. bora ver se ele posta.. ai.. quero aprender
|
Sun Certified Java Programmer 5.0
Blog:http://www.camilolopes.com
Twitter:www.twitter.com/camilolope
Linkedin: http://br.linkedin.com/in/camilolopes
Curso online OCPJP: http://pro.imasters.com.br/online/cursos/preparatorio-para-certificacao-java-ocjp
Autor livro Guia SCJP & JEE c/ Frameworks: http://blog.camilolopes.com.br/livrosrevistaspalestras/
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/10/2007 09:01:44
|
CarlosEduardoDantas
GUJ Master
![[Avatar]](/images/avatar/dc33e31c39c141adff52d67a0718b867.jpg)
Membro desde: 13/11/2006 15:26:38
Mensagens: 1089
Offline
|
LPJava wrote:observe que os objetos são diferentes na sincronização.. um é da instancia e outro é static.. um nao bloqueia o outro.. Bom essa questao é do whizlabs eu errei.. mais a melhor pessoa que eu conheço aqui no forum que daria uma boa aula disso ai é o vinny, hehe.. bora ver se ele posta.. ai.. quero aprender 
obrigado, mas essa resposta sua o whizlabs ja respondeu pra mim.. queria saber como corrigir... e outra coisa.. não tem nada a ver ser static ou não.. .se tu tirar o static, e criar a instancia no main(), o resultado é o mesmo. mas d qq forma obrigado
This message was edited 2 times. Last update was at 29/10/2007 09:03:09
|
'Nós somos o que repetidamente fazemos. Excelência, então, não é um ato, mas um hábito'.
Aristóteles.
carloseduardoxp |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/10/2007 09:14:40
|
LPJava
GUJ Hacker
Membro desde: 18/04/2006 12:50:23
Mensagens: 5524
Localização: Bahia/Porto Alegre
Offline
|
é rpz.. realmente nao. eu errei essa questao.. sei que os objetos de bloqueio sao diferentes.. fiquei de ler hj a explicacao do whizlabs..
|
Sun Certified Java Programmer 5.0
Blog:http://www.camilolopes.com
Twitter:www.twitter.com/camilolope
Linkedin: http://br.linkedin.com/in/camilolopes
Curso online OCPJP: http://pro.imasters.com.br/online/cursos/preparatorio-para-certificacao-java-ocjp
Autor livro Guia SCJP & JEE c/ Frameworks: http://blog.camilolopes.com.br/livrosrevistaspalestras/
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/10/2007 10:25:53
|
RafaelVS
JavaEvangelist
![[Avatar]](/images/avatar/50454f95bbf5e6478cc0a55d08338731.jpg)
Membro desde: 13/12/2006 09:50:16
Mensagens: 405
Localização: Recife - PE
Offline
|
Teoria básica antes: Para chamar wait() ou notify() em um objeto é preciso obter o bloqueio do mesmo (através do uso de synchronized).
No código acima, você obteu o bloqueio do objeto sa = new String("Not Done");
Mas está tentando chamar notify() no objeto criado dentro do bloco... sa = new String("done"); (o qual você não possui o lock) e, por isso, está sendo lançada IllegalMonitorStateException.
Provavelmente, pra evitar essa exceção, basta sincronizar o segundo objeto criado dentro do bloco synchronized (ou apenas comentar a linha de criação).
[]'s
|
- Mestrando em Engenharia de Software no CIn/UFPE;
- Pós-Graduado em Engenharia de Software na POLI/UPE;
- Bacharel em Ciência da Computação na UNICAP (Universidade Católica de Pernambuco);
- Sun Certified Programmer for the Java 2 Platform, Standard Edition 5.0 (score 95%);
- Sun Certified Web Components Developer for J2EE 1.4 Platform (score 89%) |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/10/2007 10:46:31
|
LPJava
GUJ Hacker
Membro desde: 18/04/2006 12:50:23
Mensagens: 5524
Localização: Bahia/Porto Alegre
Offline
|
hum foi o que falei.. antes.. pegadinha.. ai.. qdo eu respondi ela pela primeira vez.. nao me liguei e marquei errado.. e depois que aprendi e lembrei da regra.. boa RAfafel
|
Sun Certified Java Programmer 5.0
Blog:http://www.camilolopes.com
Twitter:www.twitter.com/camilolope
Linkedin: http://br.linkedin.com/in/camilolopes
Curso online OCPJP: http://pro.imasters.com.br/online/cursos/preparatorio-para-certificacao-java-ocjp
Autor livro Guia SCJP & JEE c/ Frameworks: http://blog.camilolopes.com.br/livrosrevistaspalestras/
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/10/2007 11:58:07
|
CarlosEduardoDantas
GUJ Master
![[Avatar]](/images/avatar/dc33e31c39c141adff52d67a0718b867.jpg)
Membro desde: 13/11/2006 15:26:38
Mensagens: 1089
Offline
|
muito obrigado rafael..
tirou todas as minhas duvidas.. obrigado
|
'Nós somos o que repetidamente fazemos. Excelência, então, não é um ato, mas um hábito'.
Aristóteles.
carloseduardoxp |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 19/03/2009 11:51:29
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline
|
LPJava wrote:observe que os objetos são diferentes na sincronização.. um é da instancia e outro é static.. um nao bloqueia o outro..
Bom essa questao é do whizlabs eu errei.. mais a melhor pessoa que eu conheço aqui no forum que daria uma boa aula disso ai é o vinny, hehe.. bora ver se ele posta.. ai.. quero aprender 
Não vi tópico a tempo. Mas esse, na minha opinião, é mais um exemplo de como não se trabalhar com threads.
|
@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 |
|
|
 |
|
|