Sektion 3. Kapitel 7
single
Challenge: The Limited Drop Lockdown
Stryg for at vise menuen
Opgave
Swipe to start coding
Et kendt mærke lancerer en limited edition hættetrøje med kun 10 tilgængelige eksemplarer. Der er 50 tråde, der simulerer kunder, som forsøger at købe hættetrøjen samtidig. Din opgave er at sikre, at præcis 10 hættetrøjer bliver solgt og ikke flere, ved at bruge en lås til at forhindre race conditions.
- Brug det medfølgende
lock-objekt til at synkronisere adgangen til den delte variabelhoodies_in_stock. - I funktionen
buy_hoodieskal du erhverve låsen, før du tjekker og opdaterer lagerbeholdningen. - Simulér betalingsprocessen ved at tilføje en kort forsinkelse (f.eks.
time.sleep(0.01)) mens låsen holdes. - Hvis en hættetrøje er tilgængelig, skal du nedskrive
hoodies_in_stockog tilføjecustomer_idtil listendropped_customers. - Når alle tråde er færdige, skal der være præcis 10 kunde-ID'er i
dropped_customers, oghoodies_in_stockskal være 0.
Løsning
Var alt klart?
Tak for dine kommentarer!
Sektion 3. Kapitel 7
single
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