Minha duvida é o seguinte: Eu posso colocar o metodo wait() dentro do metodo run() ?
To fazendo isso e ta dando o seguinte erro:
java.lang.IllegalMonitorStateException: current thread not owner
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Unknown Source)
at Aluno.run(Aluno.java:24)
at java.lang.Thread.run(Unknown Source)
O q pode ser ???
Pode sim, desde que seja um Thread Sincronizado,
Tente sincronizar com ele mesmo:
synchronized(this) {
wait();
}
sincronizo tb a thread que esta notificando ??? essa thread usa o metodo notifyAll();
Sincronizei a q notifica porem ele esta notificando uma vez as threads e nao notifica mais !!! No metodo run() tem um loop infinito e dentro do loop tem um if, se for verdade entaum notifica !!!
Pq esta notificando uma unica vez ?
Posta o código aqui para analisarmos.
[]s
Alguem ai sabe me dizer q eu posso mandar executar uma thread wait() mais de uma vez ???
Exemplo: Eu chamo a thread e ela esta em modo wait();
Ai uma outra thread notifica ela...
Ai ele faz o q tem q fazer e fica em wait() novamente.
Se eu mandar outro notificaçao ela funciona ??