Event¶
Lõimedevaheliseks wait/notify suhtluseks. Sündmust ootavad lõimed magavad kuni üks lõim teavitab sündmuse toimumisest. Vaikimisi väärtus False, sest sündmust pole veel toimunud.
Meetodid¶
is_set()-True, kui sündmus toimunud.set()– sündmus toimus ja väärtus nüüdTrue, lisaks äratatakse kõik ootavad lõimed.clear()– sündmus väärtustatakse mitte toimunuks (False). Uuedwait()kutsunud lõimed ootavadset()kutset.wait(timeout=None)– lõimed pannakse ootama, kuni sündmus toimub (True) või seatud ajapiir läbi saab.
Lõime ootab kuni toit valmis:
event = threading.Event()
def waiter():
print("Waiting food to be done")
event.wait()
print("Food is ready to be served!")
def Chef():
time.sleep(2)
event.set()
t1 = threading.Thread(target=waiter)
t2 = threading.Thread(target=setter)
t1.start()
t2.start()
t1.join()
t2.join()