Sfairadora

  • Referenční příručka

wait_for_change

wait_for_change(var)
wait_for_change(var, nová_hodnota)
wait_for_change(var) čas
wait_for_change(var, nová_hodnota) čas
Funkce čeká na změnu hodnoty proměnné či datové položky var. Program pokračuje v běhu až po změně hodnoty dané proměnné. Pokud je zadán parametr nová_hodnota, po změně proměnné je její stav nastaven na tuto novou hodnotu. Nastavení hodnoty je atomická operace, takže pokud je nová hodnota totožná s původní a na změnu dané proměnné čeká více než jedna funkce, bude uvolněna pouze jedna z nich.
Pokud je zadán parametr čas typu Time (píše se až za uzavírací kulatou závorku), funkce bude čekat na změnu proměnné nejdéle daný časový interval. Pokud časový interval doběhne dříve, než dojde ke změně proměnné, funkce vrátí chybu.
Funkci lze volat jen při asynchronním vyhodnocování. Pokud je vyvolána při synchronním vyhodnocování, je výsledkem chyba.

Výsledek

Výsledkem volání funkce je změněná hodnota proměnné var. Pokud je funkci předán parametr nová_hodnota, je výsledkem hodnota, která byla v proměnné těsně před přiřazením hodnoty zadané parametrem nová_hodnota.