Лекция_3
.pdfЦикл с обработкой событий
Цикл с обработкой событий – запрос на завершение
Правила для циклов с обработкой событий
•Используйте событие Value Change (Изменение Значения) для большинства элементов управления GUI
•Терминалы элементов управления размещайте внутри их случая Value Change
•Измените размер узла Even Data Node, чтобы спрятать не используемые
терминалы
•Избегайте продолжительных событий Timeout (По истечении времени)
Недостаток циклов с обработкой событий
•Можно выполнить только одну блок-диаграмму на одно событие GUI
Шаблон стандартной машины состояний
Правила машины состояний
•Используйте перечень в качестве селектора случаев
•Минимизируйте код, внешний по отношению к структуре Case
•Добавьте состояния Initilaize (Инициализация), Idle (Бездействие), Shutdown (Выключение) и Blank (Пустое)
Недостатки классической машины состояний
•Можно сохранить только одно состояние в сдвиговом регистре
•Нет обработки событий
Классическая машины состояний
Пример обработчика очереди сообщений
Конечный автомат с очередью, поддерживающий накопление многих состояний в буфере. Накопленная последовательность Затем поочередно выполняется.
Конечный автомат с очередью (Добавление событий)
Правила конечного автомата с очередью
•Используйте очередь с перечнем, как типом данных
•Избегайте использования терминала timeout с функциями Enqueue Element и Dequeue Element
Dequeue |
Enqueue |
Удаление из очереди |
Добавление в очередь |