Назначение. Блок перемещает активный транзакт в список
текущих событий в конец своего приоритетного класса.
Синтаксис.
BUFFER
Операнды
отсутствуют.
Особенности выполнения.
1.
Блок всегда принимает транзакты.
2.
Блок позволяет менять порядок выбора транзактов из списка текущих событий
таким образом, что вновь включаемые в список транзакты будут выбраны раньше
активного в данный момент.
Назначение. Блок
генерирует транзакты того же семейства, что и активный транзакт.
Синтаксис.
SPLIT
A,[B],[C]
Назначение операндов.
Операнд |
Назначение |
Значение |
Значение по умолчанию |
A |
Количество генерируемых
транзактов-потомков семейства |
Число, СЧА |
Обязательный параметр |
B |
Имя или номер блока, куда
переходят транзакты-потомки |
Имя,
число, СЧА |
Следующий блок |
C |
Параметр транзакта, значение
которого увеличивается на единицу для каждого транзакта семейства(для
транзакта-родителя на 1, для первого потомка семейства на 2 и т.д.). |
Имя,
число, СЧА |
Нет |
Особенности выполнения.
1.
Блок всегда принимает транзакты.
2.
Активный транзакт(транзакт-родитель) всегда переходит к следующему блоку.
3.
Все транзакты-потомки имеют тот же приоритет, время рождения и значения
параметров, что и транзакт-родитель(за исключением параметра, указанного в
операнде С блока).
4.
Транзакт-родитель и транзакты-потомки принадлежат одному семейству. Всем
транзактам-потомкам семейства присваивается номер семейства
транзакта-родителя(целочисленное значение). Номер семейства активного транзакта
доступен через СЧА А1. Номер семейства может быть изменен( см. описание блока
ADOPT).
5.
Номер блока для перехода потомка вычисляется для каждого сгенерированного
транзакта.
Примеры
использования.
SPLIT
2
Создаются два
транзакта-потомка, которые вместе с транзактом-родителем переходят к следующему
блоку.
SPLIT
3,fork,5
Создаются три
транзакта-потомка, которые переходят к блоку с меткой
fork.
Параметр 5 родителя и потомков будет модифицирован. Если параметр 5 родителя не
был определен, то он будет создан и после выполнения блока
SPLIT
его значение у родителя станет равным 1, у первого потомка – 2, у второго – 3,
у третьего – 4.
SPLIT
3,Р6,6
Если параметр 6
родителя содержит номер блока(например 100), то потомки будут направлены к
блокам 102, 103, 104 соответственно. |