Какво е незаконно изключение за състоянието на монитора в Java?
Какво е незаконно изключение за състоянието на монитора в Java?

Видео: Какво е незаконно изключение за състоянието на монитора в Java?

Видео: Какво е незаконно изключение за състоянието на монитора в Java?
Видео: ZEITGEIST: MOVING FORWARD | OFFICIAL RELEASE | 2011 2024, Ноември
Anonim

Както е описано в официалната документация, an IllegalMonitorStateException може да възникне, когато нишка се опита да изчака на обект монитор , или за уведомяване на други нишки, които чакат за посочения обект монитор , когато тази нишка не притежава монитор въпросният. Казано по друг начин, ако Обектът.

Имайки предвид това, как се справяте с Java Lang IllegalMonitorStateException?

За да справят се с IllegalMonitorStateException трябва да проверите дали всички извиквания на методите wait, notify и notifyAll се извършват само когато извикващата нишка притежава съответния монитор. Най-простото решение е да затворите тези повиквания в синхронизирани блокове.

Човек може също да попита какво е IllegalThreadStateException в Java? IllegalThreadStateException . Системата по време на изпълнение хвърля an IllegalThreadStateException когато извикате метод в нишка и състоянието на тази нишка не позволява извикване на този метод. Например, IllegalThreadStateException се хвърля, когато извикате suspend() в нишка, която не е „Runnable“.

Имайки предвид това, какво е обектен монитор в Java?

Накратко, а монитор е съоръжение, което монитори достъпът на нишките до специалното помещение. Той гарантира, че само една нишка има достъп до защитените данни или код. 2. Как се реализира в Java ? В Java виртуална машина, всяка обект и класът е логически свързан с a монитор.

Какво е Java Lang IllegalStateException?

публична класа IllegalStateException разширява RuntimeException. Сигнализира, че методът е бил извикан в неправомерно или неподходящо време. С други думи, на Java среда или Java приложението не е в подходящо състояние за заявената операция.

Препоръчано: