Professional Documents
Culture Documents
Declararea, Instan) Ierea (I Distrugerea Firelor de Execu) Ie
Declararea, Instan) Ierea (I Distrugerea Firelor de Execu) Ie
1.
· permit executarea simultan\ a mai multor p\r]i din
program
· constituie o versiune redus\ a unui proces
· asem\n\ri : ruleaz\ independent [i simultan
· deosebiri : la crearea unui nou proces (fork) este realizat\ o
copie exact\ a procesului p\rinte : cod + date; la crearea
unui fir de execu]ie nu este copiat decât codul
procesului p\rinte; toate firele de execu]ie au deci acces
la acelea[i date, datele procesului original
· utilitate : executarea unor opera]ii în fundal
1
import java.awt.* ;
2
catch (InterruptedException e) {}
}
}
public void stop() {
loop = false;
}
}
3
poate conduce la rezultate imprevizibile. Pentru a evita acest
lucru se folose[te cuvântul cheie synchronized, care blocheaz\
un obiect pe perioada execut\rii unui bloc de cod.
public void incIndex() {
synchronized(index) {
//bloc de cod sincronizat, ob. index este blocat
index++;
System.out.println(“index = “ + index);
}
}
Cuvântul cheie synchronized poate fi folosit [i ca
modificator al unei metode, asigurându-se utilizarea ei de
c\tre un singur fir de execu]ie la un moment dat.
public void synchronized incIndex() {
index++;
System.out.println(“index = “ + index);
}