Czekaj na sygnał

waitsignal nazwa
(waitsignal nazwa żółw)
(waitsignal nazwa żółw czas)
(waitsignal nazwa lista)
(waitsignal nazwa lista czas)

Czeka na sygnał o danej nazwie, wstrzymując wykonanie dalszych instrukcji.

Jeśli podany jest żółw instrukcja czeka na dany sygnał od tego żółwia. Jeśli podana jest lista żółwi, instrukcja czeka aż wszystkie żółwie wyślą dany sygnał.

Opcjonalnie można podać maksymalny czas oczekiwania na sygnał. Instrukcja zwraca w tym wypadku wartość logiczną true jeśli sygnał został odebrany lub false jeśli upłynął maksymalny czas oczekiwania.

Przykład:

to fn :n
  repeat :n [print repcount wait 100]
  signal "koniec
end

"t := (newt)
(fn 3) @ :t

print "czekam...
waitsignal "koniec
print "|jest!|

Rezultat wykonania:

czekam...
1
2
3
jest!

Zobacz także:

Funkcje obsługi zdarzeń i sygnałów
Żółw - obiekt

Spis treści