from threading import Lock, Thread import threading import time def retirarDinero(retirar,lock): with lock: global dineroTotal if dineroTotal == 0: print("Saldo insuficiente") else: print("Dinero retirado") dineroTotal = dineroTotal-retirar lock = threading.Lock() dineroTotal = 1000 retDinero = 200 for i in range(3): t = threading.Thread(retirarDinero(retDinero,lock)) t2 = threading.Thread(retirarDinero(retDinero,lock)) t.join t2.join