Przejdź do treści głównej
🔒 Tryb podglądu. Pierwszych piętnaście lekcji Foundations jest darmowych; ta jest Pro. Rozpocznij 7-dniowy trial, aby odblokować edytor, podpowiedzi AI i resztę kursu. Wymagana karta, anulujesz w dowolnym momencie w Dashboard.Rozpocznij 7-dniowy trial →
← KursyPython FoundationsModuł 6 · Współbieżność i równoległośćthreading.Lock — przewiduj końcowy licznikpredict136 / 174
+100 XP
Zadanie
📝 **Zadanie:** Przewiduj końcową wartość \`counter\` po 5 wątkach i jednokrotnym uruchomieniu \`bump()\`, z blokadą chroniącą przyrost. 📋 Edytuj poniższy kod startowy. Testy uruchamiają się automatycznie. 💡 **Wskazówka:** Jeśli utkniesz, przeczytaj ponownie teorię.
Przewiduj wynik

Przeczytaj kod uważnie

import threading

counter = 0
lock = threading.Lock()

def bump():
    global counter
    with lock:
        counter += 1

threads = [threading.Thread(target=bump) for _ in range(5)]
for t in threads: t.start()
for t in threads: t.join()
print(counter)

Co wypisze program? Napisz tutaj:

💬 Dyskusja

Zadaj pierwsze pytanie lub podziel się wskazówką.
Zaloguj się aby dołączyć do dyskusji. Czytanie jest darmowe.
Ładowanie dyskusji…