bug调整

This commit is contained in:
cdf
2026-01-14 11:04:12 +08:00
parent c576bd3bf7
commit eb689c9852
4 changed files with 26 additions and 27 deletions

View File

@@ -161,24 +161,26 @@ public class HistoryResultServiceImpl implements HistoryResultService {
number = historyParam.getInHarmonic();
}
//每个指标独立一个线程去查库,针对现场网络环境比较复杂的场景,正常场景看不太出来效果
asyncMethodWithCustomExecutor(contions[j],number,historyParam,eventDetailVOList,points[i],pqsDeviceUnit,lineDetailDataVO,overlimit,historyDataResultVOList,futures);
asyncMethodWithCustomExecutor(j,contions[j],number,historyParam,eventDetailVOList,points[i],pqsDeviceUnit,lineDetailDataVO,overlimit,historyDataResultVOList,futures);
}
// 等待所有任务完成
CompletableFuture.allOf(futures.toArray(new CompletableFuture[0])).join();
}
historyDataResultVOList.sort(Comparator.comparing(HistoryDataResultVO::getSort));
System.out.println("end============================="+LocalDateTime.now());
System.out.println("共计耗时:"+timeInterval.intervalMs()/1000.0);
return historyDataResultVOList;
}
//处理指标查询
public void asyncMethodWithCustomExecutor(String target,Integer number,HistoryParam historyParam,List<EventDetailVO> eventDetailVOList,String point,PqsDeviceUnit pqsDeviceUnit,LineDevGetDTO lineDetailDataVO,Overlimit overlimit,List<HistoryDataResultVO> historyDataResultVOList,List<CompletableFuture<Void>> futures) {
public void asyncMethodWithCustomExecutor(Integer sort,String target,Integer number,HistoryParam historyParam,List<EventDetailVO> eventDetailVOList,String point,PqsDeviceUnit pqsDeviceUnit,LineDevGetDTO lineDetailDataVO,Overlimit overlimit,List<HistoryDataResultVO> historyDataResultVOList,List<CompletableFuture<Void>> futures) {
CompletableFuture<Void> future = CompletableFuture.runAsync(() -> {
HistoryDataResultVO historyDataResultVO = getCondition(historyParam.getSearchBeginTime(), historyParam.getSearchEndTime(), point, target, number, historyParam.getValueType(), historyParam.getPtType(),pqsDeviceUnit,lineDetailDataVO,overlimit);
historyDataResultVO.setEventDetail(eventDetailVOList);
historyDataResultVO.setSort(sort);
synchronized (historyDataResultVOList) { // 同步块保证线程安全
historyDataResultVOList.add(historyDataResultVO);
}