在实现两个问题(有限状态机和遗传编程)的解决方案时,我面临着有效地想要取消方法执行的同样问题。 以有限状态机为例,我有
public class FiniteStateMachine {
public class runState(State state) {
state.run();
}
}
我无法控制State
,我所能做的就是调用run
方法。有时state
可能表现不佳,例如它们可能需要太多时间或太多字节码。我想阻止它们,即取消运行。我怎么能这样做,不能改变State,只能使用FiniteStateMachine和单线程代码。
答案 0 :(得分:2)
我无法控制状态,我只能调用其run方法。 我怎么能这样做,而不能只改变状态 FiniteStateMachine和单线程代码。
根据语言规范,不幸的是不可能。这只能通过多线程方法实现。
如果您可以修改State,则可以单线程进行修改,但如果State是黑盒子,那么您真的被卡住了。没有办法。