блокированный

Класс: mATLAB.
Пакет: mATLAB

Действие события, когда сущность передают сбои

Синтаксис

[entity,events]=blocked(obj,storage,entity,destination)
[entity,events,out1,...]=blocked(obj,storage,entity,destination,in1,...)

Описание

[entity,events]=blocked(obj,storage,entity,destination) задает действия события объекта, когда сущность передает сбои, потому что элемент целевой системы хранения достиг своей максимальной способности.

[entity,events,out1,...]=blocked(obj,storage,entity,destination,in1,...) задает такие действия события объекта, когда блок имеет один или несколько портов входного сигнала и/или выходных портов сигнала.

Входные параметры

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

Объект Discrete-event System.

Индекс запоминающего элемента.

Сущность оставляя запоминающий элемент. Сущность имеет эти поля:

  • sys (MATLAB structure) — Это имеет эти поля:

    • id (double) — ID сущности

    • priority (double) — Приоритет сущности

  • данные Данные сущности

Место назначения сущности, такой как выходной порт или запоминающий элемент. Это имеет эти поля:

  • type (character vector) — Задайте output или storage

  • index (double) — Выведите или индекс устройства хранения данных

Любые вводы данных объекта. Эти входные параметры существуют только, когда объект имеет вводы данных.

Выходные аргументы

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

Сущность оставляя устройство хранения данных, возможно с измененными данными.

События, которые будут запланированы после метода, возвращаются. Используйте методы класса matlab.DiscreteEventSystem создать события. Каждое событие имеет эти поля:

  • type (character vector) — Тип события

  • delay (double) — Задержитесь перед событием

  • priority (double) — Приоритет события

  • Storage (double) — Индекс запоминающего элемента

  • tag (character vector) — Тег события

  • location (MATLAB structure) — Источник или целевое местоположение сущности

Выводы данных объекта. Необходимо задать эти выходные аргументы, когда объект имеет выводы данных.

Примеры

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

Отмените текущее прямое событие после блокирования. Запланируйте событие, чтобы передать сущность следующему местоположению. Уничтожьте сущность, если никакое устройство хранения данных не может принять сущность.

function [entity,events] = blocked(obj,storage,entity,dst)
    % Cancel the current forward event. Schedule an event to
    % forward the entity to the next location. Destroy the entity
    % if no storage can accept the entity.
    if dst.index < obj.numStorage
        events = [...
            obj.cancelForward(dst.type, dst.index), ...
            obj.eventForward('storage', dst.index+1, 0)];
    else
        events = [...
            obj.cancelForward(dst.type, dst.index), ...
            obj.eventDestroy()];
    end
end

Введенный в R2016a