我已经初始化并启动了一个求解器,我已经注册了一个听众以获得最佳的解决方案,但我也想知道解决方案何时结束。 我已经配置了记录器并且它正确地显示了解算器何时停止求解(当满足终止条件或何时提前终止时)。我想知道解算器何时完成,无论它以何种方式结束。
这是我目前用于收听最佳解决方案更改的代码
solver.addEventListener(new SolverEventListener() {
@Override
public void bestSolutionChanged(BestSolutionChangedEvent bestSolutionChangedEvent) {
//Get the new best solution
}
});
我已多次浏览文档,但找不到我需要的内容。有任何想法吗?谢谢。 PS:我正在使用Optaplanner 6.0.1 final
答案 0 :(得分:1)
当Solver.solve()
方法返回时。
注意,当daemon
模式显式设置为true
时,只有在从另一个线程调用Solver.terminateEarly()
时才会发生这种情况。否则,它会在Termination
说完之后发生。