Когда прикладной класс принимает событие , он вызывает активный экземпляр .совершить событие.
В этом вызове прикладной класс передаёт входными параметрами номер полученного события и ссылки (дескрипторы) как КМС ,которые необходимо пройти ,так и экземпляра, который получил событие.
Затем операция совершить событие использует текущее состояние активного экземпляра и вызывает операцию КМС .пройти.
Операция КМС.пройти представляет каждый переход .КМС на рассмотрение внешнему модулю переход.соответствовать до тех пор ,пока он не сообщит ,что обнаружен переход соответствующий номеру события и текущему состоянию, и что известно соответствующее значение для нового состояния .
Операция КМС.пройти теперь возвращает новое состояние активному экземпляру.совершить событие,которое модифицирует состояние активного экземпляра и возвращает его значение вызывающему прикладному классу.
Если операция КМС.пройти исчерпает список переходов без получения успешного ответа из модуля переход.соответствовать, то мы столкнулись с ячейкой не может произойти из таблицы переходов в состояние .Это указывает на то что произошла ошибка либо в анализе либо в реализации.
Теория операции: прохождение конечного автомата.
24 Фев, 2009
