|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Списки пользователяВ GPSS/PC имеется тип списков сообщений, названных списками пользователя, которые дают возможность удалять сообщения из списков текущих событий и переводить их во временно неактивное состояние. Впоследствии эти сообщения возвращаются в список текущих событий. 4.3.6.1. Блок LINK Блок LINK имеет следующий формат записи: LINK <A>,<B>,[<C>] Блок LINK удаляет сообщение из списка текущих событий и помещает его в список пользователя. Поле А задает номер списка пользователя, в который будет помещено вошедшее сообщение. Операнд А может быть именем, положительным целым, СЧА. Поле В задает алгоритм упорядочивания списка пользователя. Операнд В может быть LIFO, FIFO, именем, целым или СЧА. Допустимые операнды: - FIFO – вошедшее сообщение помещается в конец списка пользователя; - LIFO – вошедшее сообщение помещается в начало списка пользователя; - номер параметра – входящие сообщения располагаются в списке пользователя в соответствии со значением указанного параметра. Сообщения располагаются по возрастанию значения этого параметра. Чем меньше значение параметра, тем ближе сообщение к началу списка, чем больше значение параметра, тем ближе сообщение к концу списка. Поле С, указывающее альтернативный выход, используется при описании различных ситуаций, возникающих в очередях. Операнд С может быть именем, положительным целым, СЧА. Если поле С пусто, индикатор, связанный с заданным списком пользователя, устанавливается в единицу. Это приводит к тому, что все входящие сообщения безусловно заносятся в список пользователя, определенный полем А в том порядке, какой задан полем В. Если поле С не пустое, проверяется индикатор списка пользователя. Если индикатор списка установлен в единицу, вошедшее сообщение заносится в список пользователя в том порядке, какой задан в поле В. Если индикатор списка установлен в "0", он переводится в единицу, и вошедшее сообщение переходит к блоку, заданному в поле С. Пример: LINK HOLD,FIFO В этом примере вошедшее сообщение помещается в конец списка пользователя с именем HOLD. Стандартными числовыми атрибутами, связанными с описываемым оператором, являются: CA<номер списка> – среднее число сообщений в списке пользователя с именем <номер списка>; CC<номер списка> – общее число сообщений в списке пользователя с именем <номер списка>; CH<номер списка> – текущее число сообщений в списке пользователя с именем <номер списка>; CM<номер списка> – максимальное число сообщений в списке пользователя с именем <номер списка>; CT<номер списка> – среднее время пребывания сообщения в списке пользователя с именем <номер списка>, которое рассчитывается следующим образом: 4.3.6.2. Блок UNLINK Блок UNLINK имеет следующий формат записи: UNLINK [<X>] <A>,<B>,[<C>],[<D>],[<E>],[<F>] Блок UNLINK удаляет сообщения из списка пользователя. Указатели отношения, записываемые во вспомогательном поле операции <X>, определяют, какое явное условие следует рассматривать. Если указатель отношения не задан, предполагается отношение равенства (Е). Указатели отношения следующие: - 'G' – больше. Отношение истинно, если значение параметра, заданного в поле D, больше значения, заданного в поле Е; - 'GE' – больше или равно. Отношение истинно, если значение параметра, заданного в поле D, больше или равно значению, заданному в поле Е; - 'L' – меньше. Отношение истинно, если значение параметра, заданного в поле D, меньше значения, заданного в поле Е; - 'LE' – меньше или равно. Если значение параметра, заданного в поле D, меньше или равно значению, заданному в поле Е, то отношение истинно; - 'E' – равно. Отношение истинно, если значение параметра, заданного в поле D, равно значению, заданному в поле Е; - 'NE' – не равно. Отношение истинно, если значение параметра, заданного в поле D, не равно значению, заданному в поле Е. Поле А задает номер списка пользователя, из которого удаляются одно или несколько сообщений. Операнд А может быть именем, положительным целым или СЧА. В поле В указывается номер блока, к которому переходят удаленные сообщения. Операнд В может быть именем, положительным целым, СЧА. Поле С задает счетчик числа удаленных сообщений. Операнд С может быть "ALL", именем, положительным целым или СЧА. Значение СЧА является числом удаляемых сообщений. Может быть задано "ALL", что означает удаление всех сообщений. Пример использования блока UNLINK: UNLINK HOLD, REENTRY, 1 Первое сообщение из списка пользователя с именем HOLD помещается в блок с именем REENTRY. Оно заносится в список текущих событий за сообщением с таким же приоритетом. Входящее сообщение переходит к следующему блоку. Стандартными числовыми атрибутами, связанными с описываемым оператором являются те же, что и для LINK. Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.) |