Элементы библиотеки Enterprise Library 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Элементы библиотеки Enterprise Library



Source

Назначение:

Генерация заявок на вход СМО. Класс заявки: по умолчанию Entitity.

 

Методы:

void inject(int n). Создает n заявок.

int count(). Возвращает количество заявок, созданных объектом.

 

Свойства:

int arrivalType (Способ генерации заявок). Заявки могут пребывать следующими способами:

С заданной интенсивностью. Интенсивность эквивалентна экспоненциальному закону распределения времени между прибытиями заявок со средним значением, равным 1/интенсивность.

Путем задания времени между прибытиями заявок. Время между двумя последовательными прибытиями определяется заданным выражением. Этот режим рекомендуется использовать для периодической генерации заявок или для генерации заявок с интервалами времени, не подчиняющихся экспоненциальному закону распределения.

int entitiesPerArrival. Количество заявок, прибывающих за один раз. Свойство доступно, если заявки прибывают согласно интенсивности или по времени между прибытиями. Значение по умолчанию равно одной заявке.

Фигура анимации заявки. Фигура анимации, с помощью которой заявки, создаваемые этим объектом, будут отображаться на презентации.

double rate (Интенсивность прибытия заявок). Свойство доступно, если заявки прибывают согласно интенсивности. Значение по умолчанию равно 1.

Entity newEntity (Новая заявка). Значение по умолчанию равно new Entity()

void onExit (Действие при выходе). Код, выполняемый при генерации заявки в канал СМО.

Queue

Назначение:

Моделирование очереди заявок.

 

Методы:

int size(). Возвращает количество заявок, находящихся в данный момент в очереди.

boolean canEnter(). Возвращает true, если в очередь может быть добавлена еще одна заявка.

 

Свойства:

int capacity (Емкость очереди).

boolean enableTimeout (Разрешить уход по таймауту).

double timeout (Таймаут).

void onExitTimeout (Действие при уходе по таймауту).

boolean enablePreemption (Разрешить вытеснение).

double priority (Приоритет заявки).

void onExitPreempted (Действие при вытеснении).

void onEnter (Действие при входе). Код, выполняемый, когда заявка поступает в объект.

void onExit (Действие при выходе). Код, выполняемый, когда заявка покидает объект.

Delay

Назначение: Моделирование процессора обслуживания.

 

Методы:

int size(). Возвращает количество заявок, задерживаемых объектом в текущий момент времени.

boolean canEnter(). Возвращает true, если объект может принять еще одну заявку.

 

Свойства:

int capacity. Вместимость объекта Delay. Задает максимальное количество заявок, которое может одновременно находиться в объекте. Значение по умолчанию равно одной заявке.

void onEnter (Действие при входе). Код, выполняемый, когда заявка поступает в объект.

void onExit (Действие при выходе). Код, выполняемый, когда заявка покидает объект.

double delayTime (Время задержки заявки).

Service

Назначение:

Моделирование очереди с процессором обслуживания с учетом использованных ресурсов.

 

Методы:

int queueSize(). Возвращает количество заявок во вложенном объекте Queue.

int delaySize(). Возвращает количество заявок во вложенном объекте Delay.

 

Свойства:

int quantity (Количество ресурсов). Выражение, вычисляющее количество ресурсов, необходимое текущей заявке. Значение по умолчанию равно одному.

void onEnterDelay (Действие при начале задержки). Код, выполняемый, когда заявка поступает во вложенный объект Delay.

ResourcePool resourcePool (Объект ResourcePool). Выражение, возвращающее имя объекта ResourcePool, задающего ресурсы, которые требуются заявке. Если поле пусто, или если выражение будет возвращать null, то будут использоваться ресурсы объекта ResourcePool, соединенного с портом access этого объекта Service. Значение по умолчанию null.

int quantity (Количество ресурсов, захваченных заявкой).

double delayTime (Время задержки, вычисленное для заявки)

Объект поддерживает свойства «Действие при входе», «Действие при выходе».

ResourcePool

Назначение:

Моделирование ресурсов.

 

Методы:

int idle(). Возвращает количество свободных ресурсов.

int busy(). Возвращает количество занятых ресурсов.

 

Свойства:

boolean unitsAreObjects (Ресурсы моделируются). Определяет, как моделируются ресурсы: как индивидуальные объекты или просто как их количество. Значение по умолчанию: «Как индивидуальные объекты (true)». Если ресурсы выделяются в виде количества их нельзя отобразить на презентации.

int capacity (Количество ресурсов). Свойство доступно если количество ресурсов задано напрямую. Значение по умолчанию равно одному.

 

Seize

Назначение:

Моделирование очереди с захватом для заявки заданного количества ресурсов определенного типа. При захвате ресурса заявка мгновенно покидает этот объект. Освободить ресурс можно с помощью объекта Release. Все захваченные ресурсы должны быть освобождены до того, как заявка будет уничтожена с помощью объекта Sink.

Методы:

Int size() – возвращает количество заявок во вложенном объекте Queue.

T get(int index) – возвращает заявку, находящуюся в очереди в позиции с номером index (ближайшая к выходу из очереди позиция имеет номер 0).

T remove(T entity) – извлекает заявку entity из очереди и возвращает ее. Если такой заявки в очереди обнаружено не будет, метод вернет null.

 

Свойства:

int quantity (Количество ресурсов). Выражение, вычисляющее количество ресурсов, необходимое текущей заявке. Значение по умолчанию равно одному.

void onEnter (Действие при входе) Код, выполняемый, когда заявка поступает в объект.

void onExit (Действие при выходе). Код, выполняемый, когда заявка покидает объект.
ResourcePool resourcePool (Объект ResourcePool). Выражение, возвращающее имя объекта ResourcePool, задающего ресурсы, которые требуются заявке. Если поле пусто, или если выражение будет возвращать null, то будут использоваться ресурсы объекта ResourcePool, соединенного с портом access этого объекта Seize. Значение по умолчанию null.

int capacity (Вместимость очереди). Параметр виден, если не выбрана опция Максимальная вместимость. Вместимость вложенной очереди queue. Значение по умолчанию: 100

 

Release

Освобождает ранее захваченные заявкой ресурсы с помощью объекта Seize. Вся процедура занимает нулевое время.

Перед уничтожением заявки все захваченные ею ресурсы должны быть освобождены.

 

Свойства:

int releaseAll (Освобождать). Определяет, будет ли этот объект освобождать Указанные ресурсы, Все захваченные ресурсы данного типа или Все захваченные ресурсы (любого типа).

Значение по умолчанию: Указанные ресурсы (Release.SPECIFIED)

Локальная переменная: Release.SPECIFIED, Release.ALL_OF_POOL, Release.ALL.

int quantity (Количество ресурсов). Виден, если объект будет Освобождать Указанные ресурсы. Выражение, вычисляющее количество ресурсов, которое необходимо освободить текущей заявке. Если количество ресурсов равно нулю, то наличие ресурсов не проверяется (может ни быть соединен объект ресурсов, ни указано его имя в поле Объект ResourcePool, т.e. там будет значение null), при этом заявка будет просто проходить через объект.

Значение по умолчанию: -1 (при отрицательном значении будут освобождаться все ресурсы заданного типа).

ResourcePool resourcePool (Объект ResourcePool). Выражение, возвращающее имя объекта ResourcePool, задающего ресурсы, которые требуется освободить. Если Вы оставите поле пустым, или если выражение будет возвращать null, то будут использоваться ресурсы объекта ResourcePool, соединенного с портом access этого объекта Release. Значение по умолчанию: null.

 

SelectOutput

Назначение:

Используется для выбора канала СМО при моделировании.

 

Свойства:

boolean conditionIsProbabilistic (Выход true выбирается). Определяет, как будет производиться маршрутизация заявок: будут ли заявки направляться на выход true (верхний порт outT) при выполнении условия, заданного в поле «Условие» или же случайно с заданной вероятностью, определенной в поле «Вероятность [0..1]». boolean condition (Условие). Свойство доступно, если выход true выбирается при выполнении условия. Условие, вычисляемое для входящей заявки. Если оно выполняется (равно true), то заявка покидает объект через порт outT, если нет - через порт outF. Значение по умолчанию randomTrue(0.5) просто разделяет поток заявок на две равные части.

code onEnter (Действие при входе). Код, выполняемый, когда заявка поступает в объект. Синтаксис:

code onExitTrue (Действие при выходе true). Код, выполняемый, когда заявка покидает объект через порт outT.

code onExitFalse (Действие при выходе false).

Код, выполняемый, когда заявка покидает объект через порт outF.

Sink

Назначение:

Уничтожение заявок, после их выхода из канала СМО.

 

Метод:

int count() – возвращает количество заявок, уничтоженных объектом Sink.

 

Свойства:

void onEnter (Действие при входе). Код, выполняемый при поступлении заявки в объект.



Поделиться:


Последнее изменение этой страницы: 2021-05-12; просмотров: 79; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.137.162.110 (0.015 с.)