Назначение.
Блок собирает транзакты одного семейства
Синтаксис.
GATHER
A
Назначение
операндов.
Операнд |
Назначение |
Значение |
Значение по умолчанию |
A |
Количество членов семейства,
подлежащих сбору |
Имя,
число, СЧА |
Обязательный параметр |
Особенности выполнения.
- Блок всегда принимает
транзакты
- Первый вошедший в блок
член семейства остается ждать в нем прибытия других членов этого же
семейства
- Каждый следующий член
семейства, входящий в блок, остается в этом блоке, и количество членов
семейства, подлежащих сбору, увеличивается на единицу
- Если количество членов
семейства, подлежащих сбору, станет равным значению операнда А, то все
собранные члены семейства пытаются войти в следующий блок
Пример
использования.
GATHER 3
в результате
выполнения блока происходит сбор трех членов каждого ансамбля, члены которых
будут входить в данный блок
Назначение. Блок синхронизирует движение транзактов одного
семейства.
Синтаксис.
MATCH
A
Назначение
операндов.
Операнд |
Назначение |
Значение |
Значение по умолчанию |
A |
Имя или номер блока
MATCH,
сопряженного с данным. |
Имя,
число, СЧА |
Обязательный параметр |
Особенности выполнения.
- Блок всегда принимает
транзакты
- Для вошедшего в блок
транзакта проверяется наличие транзакта того же семейства в блоке
MATCH, сопряженного с данным
- Если сопряженный блок
содержит транзакт того же семейства, то оба транзакта пытаются войти в
следующие за блоками MATCH блоки. В противном
случае транзакт задерживается в блоке MATCH.
- Если количество членов
семейства, подлежащих сбору, станет равным значению операнда А, то все
собранные члены семейства пытаются войти в следующий блок
Пример
использования.
PROC1
MATCH
PROC2
:
:
:
PROC2
MATCH
PPOC1
в этом случае два
транзакта одного семейства могут пройти через сопряженные блоки
MATCH
только одновременно. |