detached
王宇航 2024-01-08 14:52:01 +08:00
parent c4530afc61
commit e602ff151f
1 changed files with 23 additions and 11 deletions

View File

@ -29,6 +29,7 @@ import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.concurrent.CompletableFuture;
/** /**
* *
@ -62,11 +63,15 @@ public class RadarStatusController
{ {
TableDataInfo rspData = new TableDataInfo(); TableDataInfo rspData = new TableDataInfo();
List<SysRadar> radarList = service.selectRadarList(sysRadar); List<SysRadar> radarList = service.selectRadarList(sysRadar);
// 异步连接硬件
CompletableFuture<List<ModbusResponse>> listCompletableFuture = CompletableFuture.supplyAsync(() -> {
List<ModbusResponse> responses = new ArrayList<>();
for (SysRadar radar : radarList) { for (SysRadar radar : radarList) {
ModbusResponse modbusResponse = new ModbusResponse();
while (true) { while (true) {
ModbusMaster master = ModbusUtils.getSlave(radar.getRadarIp(), 23); ModbusMaster master = ModbusUtils.getSlave(radar.getRadarIp(), 23);
try { try {
ModbusResponse modbusResponse = ModbusUtils.holdingRegister(); modbusResponse = ModbusUtils.holdingRegister();
System.out.println(modbusResponse); System.out.println(modbusResponse);
} catch (ModbusTransportException e) { } catch (ModbusTransportException e) {
throw new RuntimeException(e); throw new RuntimeException(e);
@ -75,6 +80,13 @@ public class RadarStatusController
} }
} }
} }
return responses;
});
listCompletableFuture.thenAccept(modbusResponses -> {
for (ModbusResponse modbusResponse : modbusResponses) {
System.out.println(modbusResponse);
}
});
PageDomain pageDomain = TableSupport.buildPageRequest(); PageDomain pageDomain = TableSupport.buildPageRequest();
if (null == pageDomain.getPageNum() || null == pageDomain.getPageSize()) if (null == pageDomain.getPageNum() || null == pageDomain.getPageSize())
{ {