Kezdőoldal » Számítástechnika » Programozás » Miért nem szinkronizálva...

Miért nem szinkronizálva hajtódik végre a kód?

Figyelt kérdés

class MyClass implements Runnable{


public void run(){

move(Thread.currentThread().getName());

}


synchronized void move(String name){

System.out.println(name+"");

System.out.println(name+"");

}

}


azt várnám ,hogy a szinkronizált move-ban kétszer írja ki egymás után az adott thread nevét. de nem. itt is random az output.



2016. jún. 7. 08:54
 1/1 anonim ***** válasza:
100%

Mivel minden thread a saját move-ját hívja meg, persze, hogy nem szinkronizál.


Akkor lenne szinkronizálva, ha

A) a move statikus lenne

B) vagy egy olyan objektumban lenne, amiből 1 db van és azt hívnák a thread-ek

2016. jún. 7. 11:02
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!