Originariamente inviato da tcc
java.lang.IllegalMonitorStateException: current thread not owner
Quando si vuole invocare un wait() o notify() su un oggetto, bisogna prima aver acquisito il lock sull'oggetto. Altrimenti sbuca fuori la eccezione che hai riportato.

Ma il perché ..... beh, è tutto da vedere!