exponenta event banner

Пул ресурсов

Ресурсы объекта пула

  • Библиотека:
  • SimEvents/Управление сущностями

    SimEvents

  • Resource Pool block

Описание

Блок Пул ресурсов определяет ресурсы, которые объекты могут использовать во время моделирования модели. Используйте блоки Acquirer и Resource Releaser для работы с этими ресурсами.

Инициализируйте блок с указанным количеством доступных ресурсов. Затем:

  • Для резервирования этих ресурсов используйте один или несколько блоков приобретения ресурсов.

  • Используйте блок Releaser ресурсов, чтобы вернуть ресурсы в этот блок для использования в будущем.

Можно определить видимость доступных ресурсов в иерархии модели. Вы можете выбрать Global или Scoped ресурсы в пуле.

  • Global - На ресурсы можно ссылаться в любом месте иерархии модели.

  • Scoped - Ресурсы являются локально видимыми и могут использоваться только из подсистемы, которая содержит блок пула ресурсов и все подсистемы внутри.

Порты

Вход

развернуть все

Входной порт объекта для изменения объема ресурсов. Входные данные не могут быть отрицательными.

Зависимости

Чтобы включить этот порт, выберите Change amount through control port в качестве источника суммы ресурсов.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point

Продукция

развернуть все

Количество используемых ресурсов.

Зависимости

Чтобы включить этот порт, перейдите на вкладку «Статистика» и выберите поле «Используемая сумма», u.

Типы данных: double

Среднее время ожидания использования пула.

Зависимости

Чтобы включить этот порт, перейдите на вкладку Statistics и установите флажок Average usituation, util.

Типы данных: double

Количество доступных ресурсов.

Зависимости

Чтобы включить этот порт, перейдите на вкладку Statistics и установите флажок Amount available, avail.

Типы данных: double

Параметры

развернуть все

Введите имя ресурса сущности.

Программное использование

Параметр блока: ResourceName
Текст: символьный вектор
Значения: 'Resource1' | символьный вектор
По умолчанию: 'Resource1'

Выберите гранулярность использования ресурсов.

  • Discrete unit - Использовать целое приращение числа.

  • Fractional amount - Использовать дробное приращение.

Программное использование

Параметр блока: ResourceGranularity
Текст: символьный вектор
Значения: 'Discrete unit' | 'Fractional amount'
По умолчанию: 'Discrete unit'

  • Установите этот флажок, чтобы разрешить этому ресурсу возвращаться в пул ресурсов после выпуска. Примером такого ресурса является стол в ресторане, который доступен для повторного использования при выходе клиента.

  • Снимите этот флажок, чтобы этот ресурс не возвращался в пул ресурсов после выпуска. В этом случае, когда ресурс освобождается, он больше не доступен в пуле ресурсов. Примером такого ресурса является еда в ресторане, которая не подлежит повторному использованию при употреблении.

Программное использование

Параметр блока: ReusableUponRelease
Текст: символьный вектор
Значения: 'on' | 'off'
По умолчанию: 'off'

Выберите источник суммы ресурса.

  • Dialog

  • Change amount through control port

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

Программное использование

Параметр блока: ResourceAmountSource
Текст: символьный вектор
Значения: 'Dialog' | 'Change amount through control port'
По умолчанию: 'Dialog'

Введите объем ресурса.

Зависимости

Выберите Dialog для включения источника суммы ресурсов.

Программное использование

Параметр блока: ResourceAmount
Текст: символьный вектор
Значения: '10' | скаляр
По умолчанию: '10'

Введите начальный объем ресурса.

Зависимости

Выберите Change amount through control port для включения источника суммы ресурсов.

Программное использование

Параметр блока: InitialResourceAmount
Текст: символьный вектор
Значения: '10' | скаляр
По умолчанию: '10'

Выберите поведение ресурсов, полученных из этого пула, как Global или Scoped.

Когда Global выбрано:

  • Имена пулов ресурсов должны быть уникальными в модели.

  • Все ресурсы имеют глобальную область применения и на них можно ссылаться в любом месте иерархии модели.

  • Объект, несущий ресурс, полученный из этого блока, должен явно освободить ресурс.

  • При уничтожении сущности связанные с ней ресурсы возвращаются в пул, если установлен флажок Повторно использовать при освобождении.

Когда Scoped выбрано:

  • Ресурсы являются локально видимыми и могут использоваться только из подсистемы, которая содержит блок пула ресурсов и все подсистемы внутри.

  • Имена пулов ресурсов должны быть уникальными в иерархии модели, где виден блок пула ресурсов.

  • Объект, несущий ресурс, полученный из этого блока, должен явно освободить ресурс.

  • Когда сущность покидает область, все ресурсы, которые являются локальными по отношению к этой области и еще не освобождены, автоматически освобождаются. Если установлен флажок Повторно использовать при деблокировании, они возвращаются в пул.

Программное использование

Параметр блока: InitialResourceAmount
Текст: символьный вектор
Значения: '10' | скаляр
По умолчанию: '10'

Выводит объем ресурсов, которые блок получил и еще не освободил. Например, если пул ресурсов содержит 10 ресурсы, и объект получает все из них, этот порт показывает 10. Когда блок освобождает ресурсы, этот порт отображается 0.

Программное использование

Параметр блока: AmountInUse
Текст: символьный вектор
Значения: 'on' | 'off'
По умолчанию: 'off'

Выводит среднее использование ресурсов.

Программное использование

Параметр блока: AverageUtilization
Текст: символьный вектор
Значения: 'on' | 'off'
По умолчанию: 'off'

Выводит объем доступных ресурсов.

Программное использование

Параметр блока: AmountAvailable
Текст: символьный вектор
Значения: 'on' | 'off'
По умолчанию: 'off'

Примеры модели

Представлен в R2016a