[ vanja13 @ 03.12.2008. 11:35 ] @
Trebam da iskomentarisem rad dole navedenog programa,koji ima i rezultat naveden ispod,ali bas taj rezultat mi nikako ne ide u glavu....Zaista sam pocetnik i drago bi mi bilo kad bi mi iko mogao objasniti zasto je u rezultatu navedeno da se Prva nit izvrsava i dalje kad je po meni vec uspavana preko druge nitti????? // Primer NTZ2: Napisati 2 niti tako da jedna od niti u toku svog izvrsavanja uspava // drugu nit. class NTZ2 extends Thread { NTZ2(NTZ2 n1,String ime) { super(ime); n = n1; start(); } public void run() { while(signal) {if (getName().equals("prva")== true) System.out.println("Prva nit se izvrsava!!!"); if (getName().equals("druga")== true) System.out.println("Druga nit se izvrsava!!!"); } } void promeni() {signal = false;} void uspavaj()throws InterruptedException { System.out.println("Uspavana je prva nit"); n.sleep(10); System.out.println("Probudjena je prva nit"); } public static void main(String args[]) throws InterruptedException { NTZ2 n1 = new NTZ2(null,"prva"); NTZ2 n2 = new NTZ2(n1,"druga"); n2.uspavaj(); n1.promeni(); n2.promeni(); } boolean signal = true; NTZ2 n; } // Rezultat: // Upavana je prva nit // Prva nit se izvrsava // Prva nit se izvrsava // Prva nit se izvrsava // Prva nit se izvrsava // Prva nit se izvrsava // Prva nit se izvrsava // Prva nit se izvrsava // Probudjena je prva nit |