Wymagane jest uruchomienie pięciu wątków i czekanie tylko w najszybszym wątku. Wszystkie pięć wątków poszło szukać tych samych danych w 5 kierunkach, a jedno wystarczy, aby kontynuować przepływ sterowania.Jak poczekać, aż zakończy się tylko pierwszy wątek w Pythonie
Właściwie, muszę poczekać na pierwsze dwa wątki, aby powrócić, aby zweryfikować się nawzajem. Ale myślę, że wiem, jak czekać na najszybszy. Mogę wymyślić, jak czekać na drugą najszybszą.
Dużo mówić o join(timeout)
, ale nie wiesz z góry, który z nich należy poczekać (z którego należy wcześniej zastosować join
).
Nie odpowiada to bitowi o wątku głównym, który czeka aż do ukończenia dwóch wątków, a następnie kontynuuje: zamiast tego przeniesiono całą pozostałą czynność na drugi wątek, aby zakończyć, co może nie być tym, co jest potrzebne. – Duncan
prawda; handle_two_threads_done() powinien raczej ustawić na zdarzeniu. Edytowane. –
Ummm, listy Pythona to wątki bezpieczne? Naprawdę? Myślałem, że trzeba użyć Queue() dla spójności wątku! –