Lecture overview -- Keyboard shortcut: 'u'  Previous page: Synkroniserede konti via synchronized kommandoer -- Keyboard shortcut: 'p'  Next page: Synkronisering: For lidt og for meget -- Keyboard shortcut: 'n'  Lecture notes - all slides and notes together  slide -- Keyboard shortcut: 't'  Help page about these notes  Alphabetic index  Course home  Page 33 : 41
Forelæsningsnoter i Objekt-orienteret Programmering
Samtidighed i Java
Monitorer

Hvis man interesserer sig for samtidige programforløb er monitorer er et vigtigt begreb. Selv om vi reelt allerede har dækket essensen af begrebet gør vi det her monitorbegrebet eksplicit

Monitorer er det underliggende begreb af klasser med synkroniserede metoder

En klasse med synkroniserede metoder er også kendt som en monitor. Metoderne udgør kritiske regioner. Internt er der tilknyttet en kø af ventende tråde til et monitor objekt

Monitorer blev oprindelig beskrevet af Hoare (som hører til pionererne i faget). Vi definerer her en monitor som en en klasse med synkroniserede metoder. Dette er ikke den oprindelige definition (alene af den grund, at monitorer blev beskrevet i et ikke-objekt-orienteret programmeringssprog). Men det ville være bagvendt her at indføre en mere basal definition, der i et og alt leder frem til det sammen som den her givne.

Java anvender monitorer til at forklare låsemekanismen, som kan være knyttet til objekter i Java

Java's beskrivelse af monitorer kan bl.a. findes i klassen Object, ved metoderne notify og wait, jf. nedenstående reference til API dokumentationen i Java Development Kit