Python threading: czy mogę spać jednocześnie na dwóch threading.Event ()?

Jeśli mam dwathreading.Event() obiektów i chcesz spać, dopóki któryś z nich nie zostanie ustawiony, czy istnieje skuteczny sposób, aby to zrobić w Pythonie? Najwyraźniej mógłbym zrobić coś z pollingiem / timeoutami, ale chciałbym naprawdę spać w wątku, dopóki nie zostanie ustawiony, podobny do tego, jakselect jest używany do deskryptorów plików.

Więc w następnej implementacji, co byłoby efektywnym wdrożeniem bez odpytywaniawait_for_either wygląda jak?

a = threading.Event()
b = threading.Event()

wait_for_either(a, b)

questionAnswers(8)

yourAnswerToTheQuestion