Udfordring: Concurrentmap
Opgave:
Implementering af multitrådet system til registrering af sidebesøg.
Beskrivelse:
Der skal udvikles et program til at føre regnskab over antallet af besøg på forskellige sider på websitet. Programmet skal fungere korrekt i et multitrådet miljø, hvor flere tråde samtidigt kan øge besøgstællere for forskellige sider.
Krav:
- Brug
ConcurrentHashMaptil at gemme data om sidebesøg; - Implementér en metode, der øger besøgstælleren for en given side.
incrementVisit(); - Implementér en metode, der returnerer det aktuelle antal besøg for en given side.
getVisitCount(); - Opret flere tråde, der inkrementerer besøgstællerne samtidigt. (Dette er implementeret i klassen
Main, du skal analysere, hvad der sker der).
Tips:
- Brug
ConcurrentHashMaptil at gemme data, hvor nøglen er URL'en på siden og værdien er besøgstælleren; - Brug metoderne
compute()ellermerge()til atomar opdatering af tællere iConcurrentHashMap.
Du skal færdiggøre metoderne i klassen PageVisitCounterImpl, og derefter køre testene i klassen PageVisitCounterTest.
Når du har fuldført opgaven korrekt, skal alle tests bestås.
Når du har gjort alt korrekt, kan du prøve at redigere linjen, hvor ConcurrentMap erklæres i klassen PageVisitCounterImpl og se, hvad der sker.
Det vil sige, at du skal erstatte denne linje her med implementeringen af ConcurrentMap.
Main.java
1private final ConcurrentMap<String, Integer> visitCounts = new ConcurrentHashMap<>();
I dette tilfælde med implementeringen af den sædvanlige Map
Main.java
1private final Map<String, Integer> visitCounts = new HashMap<>();
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Awesome!
Completion rate improved to 3.33
Udfordring: Concurrentmap
Stryg for at vise menuen
Opgave:
Implementering af multitrådet system til registrering af sidebesøg.
Beskrivelse:
Der skal udvikles et program til at føre regnskab over antallet af besøg på forskellige sider på websitet. Programmet skal fungere korrekt i et multitrådet miljø, hvor flere tråde samtidigt kan øge besøgstællere for forskellige sider.
Krav:
- Brug
ConcurrentHashMaptil at gemme data om sidebesøg; - Implementér en metode, der øger besøgstælleren for en given side.
incrementVisit(); - Implementér en metode, der returnerer det aktuelle antal besøg for en given side.
getVisitCount(); - Opret flere tråde, der inkrementerer besøgstællerne samtidigt. (Dette er implementeret i klassen
Main, du skal analysere, hvad der sker der).
Tips:
- Brug
ConcurrentHashMaptil at gemme data, hvor nøglen er URL'en på siden og værdien er besøgstælleren; - Brug metoderne
compute()ellermerge()til atomar opdatering af tællere iConcurrentHashMap.
Du skal færdiggøre metoderne i klassen PageVisitCounterImpl, og derefter køre testene i klassen PageVisitCounterTest.
Når du har fuldført opgaven korrekt, skal alle tests bestås.
Når du har gjort alt korrekt, kan du prøve at redigere linjen, hvor ConcurrentMap erklæres i klassen PageVisitCounterImpl og se, hvad der sker.
Det vil sige, at du skal erstatte denne linje her med implementeringen af ConcurrentMap.
Main.java
1private final ConcurrentMap<String, Integer> visitCounts = new ConcurrentHashMap<>();
I dette tilfælde med implementeringen af den sædvanlige Map
Main.java
1private final Map<String, Integer> visitCounts = new HashMap<>();
Tak for dine kommentarer!