修改下发缓存命令的等待逻辑,RTU上行数据后,使尽快发送下行命令。
| | |
| | | } |
| | | |
| | | /** |
| | | * 设置上行数据时刻 |
| | | * 当有上行数据时 |
| | | * @param rtuAddr |
| | | */ |
| | | public static void cacheUpDataTime(String rtuAddr){ |
| | | public static void whenUpData(String rtuAddr){ |
| | | TcpSession tcpSe = map.get(rtuAddr) ; |
| | | if(tcpSe != null){ |
| | | tcpSe.lastDownComTime = 0L ;//置0,使等待lastUpDataTimeLive(见config.xml配置文件)时长后,即刻下发缓存中的命令 |
| | | tcpSe.lastUpDataTime = System.currentTimeMillis() ; |
| | | tcpSe.lastUpDataTimeForOnlineCtrl = System.currentTimeMillis() ; |
| | | } |
| | |
| | | */ |
| | | |
| | | //设置收到数据时刻 |
| | | TcpSessionCache.cacheUpDataTime(rtuAddr); |
| | | TcpSessionCache.whenUpData(rtuAddr); |
| | | |
| | | if(protocolName != null){ |
| | | //对上行数据进行处理 |