[ jelenadjor @ 09.10.2011. 13:52 ] @
Zdravo svima, Pocela sam da ucim niti i naisla sam na sledeci problem. Program izgleda ovako package Niti; public class NT5a extends Thread { boolean signal; NT5a(){ signal=true; start(); } public void run(){ InterruptKojiPrekidaNeuspavanuNit(); System.out.println("Prekinuta nit."); } public void InterruptKojiPrekidaNeuspavanuNit(){ //while(!isInterrupted()&&signal){} while(!interrupted()&&signal){ } System.out.println("Status prekida: "+ isInterrupted()); } public static void main(String[] args)throws Exception{ NT5a nn=new NT5a(); nn.interrupt(); } } Prrogram radi dobro, nakon sto se pokrene run metoda niti nn, interrupt metoda prekine while petlju i zavrsi rad metode InterruptKojiPrekidaNeuspavanuNit, a time i rad run metode. Medjutim, buni me kako radi program u debug modu. Prvo postavim breakpoint na nn.interrupt(); a onda na while(!interrupted()&&signal){ !interrupted()&&signal vraca true, a izadje iz while petlje. Nije mi jasno zasto? Hvala na pomoci! |