@dj_vadim

Как сделать случайную отправку транзактов в GPSS?

Приветствую!
Есть программа на GPSS которая генерирует транзакты и по очереди шлёт на разные узлы. Технология гиперкуб, широковещательный тип. Первый узел шлёт транзакты по очереди, а нужно сделать рандомно на все узлы. Что в коде нужно заменить или дописать?
GENERATE	16,2 ; Генерируем таранзакты на отрезке 14-18
	QUEUE	LQ1 ; Стать в очередь LQ1 (QUEUE - для сбора и обработки статистической информации)
	SEIZE	U1 ; Занаять одноканальное устройство с именем U1	
	DEPART	LQ1 ; Уйти из очереди LQ1	
	ADVANCE	16,2 ; Задержать транзакт на случайное время 14-18 (транз переводится из ТС в БС)	
	RELEASE 	U1 ; Освободить одноканал устр с именем U1
	SPLIT	1,L3  ; Если отказ до делаем копию и направляем в блок 3
	QUEUE	LQ2 ; Становимся в очередь	
	SEIZE	U2 ; Занимаем устройство	
	DEPART	LQ2 ; Уходим из очереди	
	ADVANCE	16,2 ; Задерживаем транзакт	
	RELEASE 	U2 ; Освобождаем устройство
    QUEUE	LQ3 ; Становимся в очередь	
	SEIZE	U3 ; Занимаем устройство	
	DEPART	LQ3 ; Уходим из очереди	
	ADVANCE	16,2 ; Задерживаем транзакт	
	RELEASE 	U3 ; Освободим устройство
    QUEUE	LQ4 ; Становимся в очередь 4	
	SEIZE	U4 ; Занимаем устройство	
	DEPART	LQ4 ; Уходим из очереди	
	ADVANCE	16,2 ; Задерживаем транзакт	
	RELEASE 	U4 ; Освободим устройство
	QUEUE	LQ5 ;  Станем в очередь	
	SEIZE	U5 ; Занимаем устройство	
	DEPART	LQ5 ; Уходим из очереди	
	ADVANCE	16,2 ; Задерживаем транзакт	
	RELEASE 	U5 ; Освобождаем устройство
	TRANSFER ,AS ; Изменяем направление перемещения транзактов. Безусловная передача так как задан второй операнд
L3 QUEUE	LQ6 ; Блок 3 - Становимся в очередь	
	SEIZE	U6 ; Занимаем устройство	
	DEPART	LQ6 ; Уходим из очереди	
	ADVANCE	16,2 ; Задерживаем транзакт	
	RELEASE 	U6 ; Освобождаем устройство
    QUEUE	LQ7 ; Становимся в очередь	
	SEIZE	U7 ; Занимаем устройство
	DEPART	LQ7 ; Уходим из очереди	
	ADVANCE	16,2 ; ЗАдерживаем транзакт 	
	RELEASE 	U7 ; Освобождаем устройство
AS	ASSEMBLE	2 ; Собираем все пакеты в одном месте
    QUEUE	LQ8 ; Станем в очередь	
	SEIZE	U8 ; Займём устройство	
	DEPART	LQ8 ; Уходим из очереди	
	ADVANCE	16,2 ; Задержка по времени	
	RELEASE 	U8 ; Освободим устройство
	TERMINATE 1 ; Удаляем 1 транзакт (вычитаем 1 из счётчика завершений)	
	START	100 ; Запуск - начальное время счётчика завршений
  • Вопрос задан
  • 278 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы