Junior — Middle
Ar galima naudoti synchronized modifikatorių statiniam metodui Java kalboje?
sobes.tech AI
Atsakymas iš AI
Taip, Java galima naudoti synchronized modifikatorių statiniams metodams. Šiuo atveju, užraktas vyksta klasės lygyje (objektas Class), o ne instancijos lygyje.
Tai reiškia, kad jei vienas srautas vykdo sinchronizuotą statinį metodą, kiti srautai, bandydami iškviesti bet kurį kitą to paties klases sinchronizuotą statinį metodą, bus užblokuoti iki kol užraktas bus atlaisvintas.
Pavyzdys:
public class Example {
public static synchronized void staticMethod() {
// kodas, sinchronizuotas ant Example.class objekto
}
}
Taip, synchronized statiniams metodams užtikrina srautų saugumą klasės lygyje.