线程安全java有限状态机(FSM)

时间:2013-09-27 22:12:56

标签: java multithreading fsm

我已经看到了很多针对JAVA的FSM实现,​​但我不确定是否有任何“可重用”的实现。可重用的是什么意思?

我正处理具有各种状态的多个对象的状态转换。我想配置一个单独的状态机,它显然本身需要无状态和线程安全,所以我可以传递所有给定的对象,以便并行执行它们的状态转换。

我想知道这个场景中是否有合适的场景?

1 个答案:

答案 0 :(得分:3)

这可能与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

同样,这就是我从头开始编写它们的方式。