Download præsentationen
Præsentation er lastning. Vent venligst
Offentliggjort afArne Davidsen Redigeret for ca. et år siden
2
Processer og tråde Implementation af tråde Trådinterferens Synkronisering Atomare aktiviteter
3
Proces: ◦ Knyttet til et execution enviroment ◦ Har én eller flere tråde Tråd: ◦ Eksisterer i en proces Processer og tråde
5
Implementation af tråde 2
6
Sleep() Interrupt() try { Thread.sleep(4000); } catch (InterruptedException e) { “InterruptedException have been caught” }
7
Trådinterferens Memory Consistency Error Thread A: Retrieve c Thread B: Retrieve c Thread A: Increment retrieved value Thread B: Decrement retrieved value Thread A: Store result in c, is now 1 Thread B: Store result in c, is now -1 Should have been : 0 Når to tråde arbejder med samme objekt på én gang
8
Happens-before relationship ◦ Ex. Join() Brug af lås Trådinterferens
9
Synchronized Method Synchronized Statement Kritiske regioner ◦ Deadlock ◦ Starvation- udsultning ◦ Livelock Nyttige metoder ◦ wait(), notify(), notifyAll() Synkronisering
10
Atomare aktiviteter
11
Processer og tråde Implementation af tråde Trådinterferens Synkronisering Atomare aktiviteter
Lignende præsentationer
© 2024 SlidePlayer.dk Inc.
All rights reserved.