Математическое моделирование


Блоки условной передачи транзактов IF и WAITIF - часть 2


В SERVER? режиме (режиме присвоения) имеется дополнительный операнд D. Формат блока определяется следующим образом:

IF A*B,C=D

В приведенной записи «*» - любое отношение, операнды А и В - константы или СЧА, операнд С - это S-величина или параметр, которой будет присвоено значение операнда D в случае,если проверка отношения между операндами А и В даст результат true (истина). Операнд D - константа, СЧА или выражение. В качестве примера использования блока IF в SERVER–режиме, может быть приведена следующая запись:

IF X$norm<0,X$norm=0

Приведенная запись означает следующее: если величина X$norm<0 (X$norm - сохраняемая величина с именем norm),то ее нужно установить в «0»,в противном случае она сохранит свое прежнее значение.

Блок WAITIF является разноидностью блока IF.Операнды А и В и отношения между ними задаются так же как и в блоке IF, но отсутствует операнд С. Смысл блока WAITIF может быть сформулирован в следующем виде: «ЖДАТЬ если условие выполняется, до тех пор, пока оно не перестанет выполняться». Так, например, запись

WAITIF stor=E

означает следующее: транзакт должен ждать до тех пор, пока МНУ с именем stor занято. Как только это условие перестанет выполняться (то есть МНУ освободится), транзакт переходит в следующий блок.




- Начало -  - Назад -  - Вперед -