|
|
|
@ -130,6 +130,7 @@ public class MessageHandler { |
|
|
|
List<String> sendTimesUpLimitMessageList = null,expiredMessageList = null; |
|
|
|
|
|
|
|
while(true){ |
|
|
|
try { |
|
|
|
logger.info("while true"); |
|
|
|
//从redis中或取第一个待处理用户
|
|
|
|
Object o = RedisUtil.sPop(RedisKeyManager.getPendingClientSetKey()); |
|
|
|
@ -200,6 +201,9 @@ public class MessageHandler { |
|
|
|
} |
|
|
|
ResourceLock.freeLockObj(ackId); |
|
|
|
} |
|
|
|
} catch (Exception e) { |
|
|
|
logger.error("循环发送消息异常", e); |
|
|
|
} |
|
|
|
try { |
|
|
|
Thread.sleep(100); |
|
|
|
} catch (InterruptedException e) { |
|
|
|
@ -476,8 +480,9 @@ public class MessageHandler { |
|
|
|
// 寄存器将要修改的数据
|
|
|
|
long value = 0; |
|
|
|
for (int j = 0; j < CCModBusEntity.SIZE_DATA_SINGLE; j++) { |
|
|
|
|
|
|
|
value <<= 8; |
|
|
|
value += modBusData[CCModBusEntity.POSITION_DATA + CCModBusEntity.SIZE_DATA_SINGLE * i + j]; |
|
|
|
value |= modBusData[CCModBusEntity.POSITION_DATA + CCModBusEntity.SIZE_DATA_SINGLE * i + j] & 0xFF; |
|
|
|
} |
|
|
|
if (origin == null || origin.longValue() != value) { |
|
|
|
register.put(String.valueOf(startAddr + i), value); |
|
|
|
|