IllegalMonitorStateExceptionIllegalMonitorStateException
Wątek próbuje wykonać operację na monitorze (wait, notify) bez posiadania monitora obiektu.
Co powoduje ten błąd
Metody wait(), notify() i notifyAll() można wywoływać tylko z wnętrza bloku synchronized blokującego ten sam obiekt. Wywołanie ich poza synchronizacją powoduje rzucenie tego wyjątku.
Jak to naprawić
Owiń wywołanie blokiem synchronized na właściwym obiekcie. Upewnij się, że synchronizujesz na tym samym obiekcie, na którym wywołujesz wait/notify.
Powiązane kody błędów
NullPointerExceptionNullPointerException
Odwołanie null jest użyte tam, gdzie wymagany jest obiekt.
IndexOutOfBoundsExceptionIndexOutOfBoundsException
Do kolekcji odwołano się za pomocą indeksu spoza prawidłowego zakresu.
IOExceptionIOException
Operacja I/O kończy się niepowodzeniem lub jest przerywana.
InvalidClassExceptionInvalidClassException
Serializowana klasa ma niezgodną wersję lub nieprawidłowy format.
UnknownHostExceptionUnknownHostException
Nie można rozwiązać nazwy hosta na adres IP.
IllegalArgumentExceptionIllegalArgumentException
Metoda otrzymuje argument, który jest nieprawidłowy dla oczekiwanego zakresu lub formatu.