我已經看到了JAVA的很多FSM實現,但我不確定是否有任何「可重用」的實現。我可以重複使用的意思是什麼?線程安全的java有限狀態機(FSM)
我正在處理具有各種狀態的多個對象的狀態轉換。我想配置一個顯式自身需要無狀態和線程安全的單態狀態機,所以我可以通過所有給定的對象來並行執行其狀態轉換。
我想知道這裏有沒有適合的場景?
我已經看到了JAVA的很多FSM實現,但我不確定是否有任何「可重用」的實現。我可以重複使用的意思是什麼?線程安全的java有限狀態機(FSM)
我正在處理具有各種狀態的多個對象的狀態轉換。我想配置一個顯式自身需要無狀態和線程安全的單態狀態機,所以我可以通過所有給定的對象來並行執行其狀態轉換。
我想知道這裏有沒有適合的場景?
這可能是https://stackoverflow.com/questions/10875317/recommended-fsm-finite-state-machine-library-for-java的重複,但很難確定。之前我在多線程系統中使用了SMC。
簡單的狀態機,可能適合你是使用像這樣的枚舉。
http://vanillajava.blogspot.com/2011/06/java-secret-using-enum-as-state-machine.html
再次,這是我如何從頭開始編寫它們。
你怎麼能有一個無狀態的狀態機?你想每個線程狀態機?我這種情況下你不需要單身。 –
我需要一個可以並行處理多個對象的FSM。爲了使狀態機並行處理多個對象的轉換,它需要將每個進程的數據保持在自己的狀態之外。這就是我無意義的意思,但我同意這不是條款的最佳選擇。 – husayt
我會將它建模爲每個線程的狀態機。這種狀態是線程本地或本地任務。 –