Kas yra neteisėtos monitoriaus būsenos išimtis Java?
Kas yra neteisėtos monitoriaus būsenos išimtis Java?

Video: Kas yra neteisėtos monitoriaus būsenos išimtis Java?

Video: Kas yra neteisėtos monitoriaus būsenos išimtis Java?
Video: IllegalMonitorStateException ...or wait without synchronized #airhacks #java #shorts #short 2024, Balandis
Anonim

Kaip aprašyta oficialiuose dokumentuose, an IllegalMonitorStateException gali atsirasti, kai gija bando laukti objekto stebėti , arba pranešti kitoms gijomis, laukiančiomis minėto objekto stebėti , kai tai gijai nepriklauso stebėti klausime. Kitaip tariant, jei objektas.

Atsižvelgiant į tai, kaip tvarkote „Java Lang IllegalMonitorStateException“?

Tam, kad susidoroti su IllegalMonitorStateException turite patikrinti, ar visi laukimo, pranešimo ir pranešimo iškvietimai yra vykdomi tik tada, kai iškvietimo gijai priklauso atitinkamas monitorius. Paprasčiausias sprendimas yra įtraukti šiuos skambučius į sinchronizuotus blokus.

Taip pat galima paklausti, kas yra „IllegalThreadStateException“programoje „Java“? IllegalThreadStateException . Vykdymo laiko sistema išmeta an IllegalThreadStateException kai iškviečiate metodą gijoje ir tos gijos būsena neleidžia to metodo iškviesti. Pavyzdžiui, IllegalThreadStateException išmeta, kai iškviečiate suspend() gijoje, kuri nėra „Paleidžiama“.

Atsižvelgiant į tai, kas yra objektų monitorius Java?

Trumpai tariant, a stebėti yra įrenginys, kuris monitoriai siūlų patekimas į specialų kambarį. Tai užtikrina, kad tik viena gija gali pasiekti apsaugotus duomenis ar kodą. 2. Kaip tai įgyvendinama Java ? Viduje konors Java virtuali mašina, kiekviena objektas o klasė logiškai siejama su a stebėti.

Kas yra „Java Lang IllegalStateException“?

viešoji klasė IllegalStateException pratęsia RuntimeException. Signalizuoja, kad metodas buvo panaudotas neteisėtu arba netinkamu laiku. Kitaip tariant, Java aplinka arba Java programa nėra tinkamos būsenos prašomai operacijai.

Rekomenduojamas: