我想在optaplaner中使用多线程功能。
我编辑了cloudBalancingSolverConfig.xml并设置了多线程计数4
但我认为它不起作用。所有线程名称都是相同的。
19:37:12.980 l-4-线程-1调试CH步骤(1533),花费的时间(5839),分数(-3266init/0hard/-909220软),选择的移动计数(1276),选择的移动(云进程-1262{空->云计算机-1112})。19:37:12.982 l-4-线程-1调试CH步骤(1534),花费的时间(5841),分数(-3265init/0hard/-909710soft),选择的移动计数(1600),选择的移动(云进程-1053{空->云计算机-908})。19:37:12.984 l-4-线程-1调试CH步骤(1535),花费的时间(5843),分数(-3264init/0hard/-909710soft),选择的移动计数(1277),选择的移动(云进程-1049{空->云计算机-1138})。19:37:12.987 l-4-线程-1调试CH步骤(1536),花费的时间(5846),分数(-3263init/0hard/-912110soft),选择的移动计数(1600),选择的移动(云进程-1003{空->云计算机-1231})。19:37:12.990 l-4-线程-1调试CH步骤(1537),花费的时间(5849),分数(-3262init/0hard/-912110soft),选择的移动计数(1278),选择的移动(云进程-941{空->云计算机-1231})。19:37:12.992 l-4-线程-1调试CH步骤(1538),花费的时间(5851),分数(-3261init/0hard/-912110soft),选择的移动计数(1278),选择的移动(云进程-893{空->云计算机-1231})。19:37:12.994 l-4-线程-1调试CH步骤(1539),花费的时间(5853),分数(-3260init/0hard/-914510soft),选择的移动计数(1600),选择的移动(云进程-840{空->云计算机-1286})。19:37:12.996 l-4-线程-1调试CH步骤(1540),花费的时间(5855),分数(-3259init/0hard/-916910soft),选择的移动计数(1600),选择的移动(云进程-820{空->云计算机-1311})。19:37:12.998 l-4-线程-1调试CH步骤(1541),花费的时间(5857),分数(-3258init/0hard/-916910soft),选择的移动计数(1278),选择的移动(云进程-779{空->云计算机-1231})。19:37:13.000 l-4-线程-1调试CH步骤(1542),花费的时间(5859),分数(-3257init/0hard/-916910soft),选择的移动计数(1279),选择的移动(云进程-768{空->云计算机-1286})。19:37:13.003 l-4-线程-1调试CH步骤(1543),花费的时间(5862),分数(-3256init/0hard/-917470soft),选择的移动计数(1600),选择的移动(云进程-739{空->云计算机-750})。19:37:13.005 l-4-线程-1调试CH步骤(1544),花费的时间(5864),分数(-3255init/0hard/-917470soft),选择的移动计数(1278),选择的移动(云进程-728{空->云计算机-1231})。19:37:13.007 l-4-线程-1调试CH步骤(1545),花费的时间(5866),分数(-3254init/0hard/-917470soft),选择的移动计数(1278),选择的移动(云进程-671{空->云计算机-1231})。19:37:13.009 l-4-线程-1调试CH步骤(1546),花费的时间(5868),分数(-3253init/0hard/-917470soft),选择的移动计数(1279),选择的移动(云进程-615{空->云计算机-1286})。
我在cloudChangeMove,couldSwapMove中检查了重新建立基础的实现。它已经像下面这样实现了。
@Override
public CloudComputerChangeMove rebase(ScoreDirector<CloudBalance> destinationScoreDirector) {
return new CloudComputerChangeMove(destinationScoreDirector.lookUpWorkingObject(cloudProcess),
destinationScoreDirector.lookUpWorkingObject(toCloudComputer));
}我是不是忘了什么?optaplaner的版本是7.23。
但它与之前的版本(7.22)相同
请让我知道我的问题。
发布于 2019-06-24 19:19:04
打开TRACE日志记录。步骤由求解器线程完成,移动求值(仅在跟踪日志记录中可见)由移动线程完成。
https://stackoverflow.com/questions/56734895
复制相似问题