Рамки без гражданства работают с независимыми Форкс?
Мы думаем о принятии Stateless Framework Stateless в нашей системе, но у нас есть требование, которое я еще не понял, может ли Framework Stateless помочь или если он увеличит сложность нашей системы.
Зачем менять? Потому что система растет и имеет некоторые зависимости между каждым конечным автоматом, которые мы хотим удалить. Также лучше использовать открытый исходный код и хорошо структурированный фреймворк, который делает новый.
Пример: у нас есть недетерминированный конечный автомат [SM_A], который разветвляет в [n] новые конечные автоматы [SM_B]. Последнее состояние [SM_A] зависит от всех вилок [SM_B]. Каждый разветвитель присоединяется к SM_A, когда работа заканчивается, информирует его, чтобы проверить, все ли SM_B закончены. Когда все вилки закончатся, SM_A продолжится. Кроме того, все состояния должны быть сохранены, потому что в данный момент мы ждем действия, чтобы "разбудить" все вилки [SM_B].
(Псевдосостояния: http://www.uml-diagrams.org/state-machine-diagrams.html)
Изображение ниже иллюстрирует поток:
Извините, если вы не понимаете.
1 ответ
Stateless не поддерживает вилки, как я их понимаю. Но я думаю, что безгражданство может быть использовано для решения вашей проблемы. Может быть, SM_A можно использовать для создания экземпляра n объектов SM_B. SM_A отслеживает все SM_B, и каждый SM_B сообщает SM_A, что он выполнил свою работу. Когда SM_A замечает, что все SM_B завершены, он переходит в состояние SM_A_5.