Problema com Threads... interrupt() e wait()

Boa tarde :slight_smile:

A minha duvida prende-se com uma confusão de conceitos no que diz respeito aos métodos wait() e interrupt() das Threads que tenho sido obrigado a usar num projecto de programação que tenho de desenvolver…

Basicamente tenho duas imagens que tentam aceder a uma mesma célula provocando problemas de sincronização. Quando uma imagem detecta a outra na célula imediatamente a seguir lança um wait() e as imagens ficam em espera… A duvida chega aqui quando eu pretendo fazer as imagens moverem-se de novo. O notify()/notifyAll() não esta a funcionar neste caso não sei bem porque…

Basicamente, para tentar fazer as imagens moverem se de novo tenho um mouselistener que me procura a imagem, mete-lhe uma nova direcção e tenta-lhe fazer um notify (através do debug do eclipse consigo detectar que o programa chega a correr aqui, apenas de que nao faz o notify)

Falaram-me de experimentar, depois da thread estar em wait(), de usar o mouselistener e, depois de mudar as posição, interromper a Thread, e que quando apanhasse a excepção provocada pelo interrupt(), fazer com que a Thread verifique novamente se se pode mover, se se poder faz o notify().

É aqui que nasce a minha duvida. Como é que apanhando a excepção faço-a verificar se se pode mover, dado que já está em wait() à espera de ser notificada?