wyklad9.pdf

(93 KB) Pobierz
181938126 UNPDF
Wykład 9:
Programowanie Wielo-Wątkowe
Programowanie Równoległe
oparte na procesach:
wykonywalny program
własna przestrzeń adresowa
droga komunikacja i zmiana kontekstu
oparte na wątkach:
wątek to część programu
wspólna przestrzeń adresowa
tania komunikacja i zmiana kontekstu
181938126.001.png
Programowanie Równoległe w Javie
Oparte o wątki:
stany wątku: wykonywany, gotowy, zawieszony,
wznowiony, zablokowany
priorytety: wątek o wyższym priorytecie zawiesza ten
o niższym
synchronizacja: tylko jeden wątek wykonuje metodę
synchroniczną na danym obiekcie
komunikacja: przez metody synchroniczne
181938126.002.png
Wątek Główny
tworzony automatycznie
wątek z którego powstają inne wątki
pierwszy powstaje, ostatni kończy się
Uzyskanie odwołania do bieżącego wątku:
static Thread currentThread()
181938126.003.png
Wątek Główny: Przykład
class CurrentThreadDemo {
public static void main(String args[]) {
Thread t = Thread.currentThread();
System.out.println("Current thread: " + t);
t.setName("My Thread");
System.out.println("After name change: " + t);
try {
for(int n = 5; n > 0; n--) {
System.out.println(n);
Thread.sleep(1000);
}
} catch (InterruptedException e) {
System.out.println("Main interrupted");
}
}
}
181938126.004.png
Zgłoś jeśli naruszono regulamin