Zgłoś sygnał

signal nazwa
(signal nazwa arg)
signalw nazwa
(signalw nazwa arg)

Zgłasza sygnał o danej nazwie i opcjonalnych parametrach arg. Instrukcja signal nie czeka na zakończenie obsługi sygnału. Istrukcja signalw blokuje dalsze wykonanie programu żółwia aż do zakończenia funkcji obsługi wysłanego sygnału przez wszystkie żółwie (nie jest możliwe wysłanie "blokującego" sygnału przez żółwia do samego siebie).

Przykład 1:

to model
  to onsignaltest
    print who
  end
end

"t := newturtles 3 $model
signal "test
print "wysłany

Rezultat wykonania:
Program żółwia wysyłającego sygnał działa równolegle z funkcjami obsługi sygnału - kolejność wszystkich napisów może być różna w każdym uruchomieniu.

wysłany
model1
model3
model2

Przykład 2:

to model
  to onsignaltest
    print who
  end
end

"t := newturtles 3 $model
signalw "test
print "obsłużony

Rezultat wykonania:
Program żółwia wysyłającego sygnał czeka na zakończenie funkcji obsługi sygnału - kolejność napisów "modelx" może być różna w każdym uruchomieniu, ale napis "obsłużony" zawsze pojawia się jako ostatni.

model2
model1
model3
obsłużony

Zobacz także:

Żółw - obiekt

Spis treści