Logo lt.boatexistence.com

Kaip sinchronizuotas raktinis žodis veikia „Java“?

Turinys:

Kaip sinchronizuotas raktinis žodis veikia „Java“?
Kaip sinchronizuotas raktinis žodis veikia „Java“?

Video: Kaip sinchronizuotas raktinis žodis veikia „Java“?

Video: Kaip sinchronizuotas raktinis žodis veikia „Java“?
Video: 13.7 Multithreading Synchronized Keyword 2024, Gegužė
Anonim

1. Sinchronizuotas „Java“raktinis žodis naudojamas suteikti abipusiai išskirtinę prieigą prie bendrinamo š altinio su keliomis „Java“gijomis Sinchronizavimas „Java“garantuoja, kad dvi gijos negali vykdyti sinchronizuoto metodo, kuriam vienu metu reikalingas tas pats užraktas arba vienu metu.

Kaip sinchronizuotas raktinis žodis veikia viduje?

Tai galima apytiksliai apibūdinti taip, kad kiekvienas sinchronizacijos blokas turi nematomas instrukcijas prie įėjimo ir išėjimo, pirmasis sako: „Perskaitykite viską iš bendros atminties, kad būtumėte kuo naujausia -data, kiek įmanoma“, o paskutinis sakydamas „dabar išmeskite viską, ką ten darėte, į bendrą atmintį“.

Kaip sinchronizuoti kintamuosius programoje „Java“?

Naudokite sinchronizuotą raktinį žodį Naudojant sinchronizuotą raktinį žodį metoduose, reikės gijų, kad būtų užrakintas mėginio pavyzdys. Taigi, jei kuri nors viena gija yra newmsg, jokia kita gija negalės užrakinti mėginio egzemplioriaus, net jei ji bandytų iškviesti getmsg.

Kam reikalingas sinchronizuotas raktinis žodis Java?

Todėl reikia sinchronizuoti kelių gijų veiksmus ir įsitikinti, kad tik viena gija gali pasiekti š altinį tam tikru momentu Tai įgyvendinama naudojant koncepciją vadinami monitoriais. Kiekvienas Java objektas yra susietas su monitoriumi, kurį gija gali užrakinti arba atrakinti.

Kaip gijos sinchronizuojamos naudojant Java?

Java programoje kiekvienas objektas turi vieną užraktą (monitorių), susietą su juo. Gija, kuri patenka į sinchronizuotą metodą arba sinchronizuotą bloką, gaus tą užraktą, visos kitos gijos, kurios lieka naudoti bendrinamus išteklius, turi palaukti, kol bus baigta pirmoji gija ir užraktas bus paleistas.

Rekomenduojamas: