From 55e923c9eb7654e4cfd99c299d48f7b7912bc59c Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期三, 20 十二月 2023 08:53:57 +0800
Subject: [PATCH] 1、通信中间件多个恒久任务由一个线程执行改为一个恒久任务一个线程执行,原因是单个恒久任务可能用时很长 ; 2、优化通信中间件代码

---
 pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/tasks/ToRtuConstantTask.java |   17 ++++++++++-------
 1 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/tasks/ToRtuConstantTask.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/tasks/ToRtuConstantTask.java
index c9b84d6..3de49a2 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/tasks/ToRtuConstantTask.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/tasks/ToRtuConstantTask.java
@@ -26,6 +26,7 @@
 			log.error("鏇存柊RTU浼氳瘽涓婃姤鏁版嵁鏃跺埢鏃跺彂鐢熼泦鍚堟搷浣滃紓甯革紝姝ゅ紓甯稿苟涓嶅奖鍝嶇郴缁熸甯歌繍琛�", e);
 		}
 		try{
+			//log.info("褰撳墠涓嬭鍛戒护闃熷垪涓繕鏈夌粨鐐规暟閲忥細" + TcpDownCommandCache.size());
 			dealDownCom() ;
 		}catch(Exception e){
 			log.error(e);
@@ -60,10 +61,10 @@
 	 */
 	private Node doDealDownComm(Long now, Node first, Node last){
 		if(last != null){
+			//鍦╠ealNode鏂规硶涓紝鍙兘瑕佹妸last浠庨槦鍒椾腑绉婚櫎锛岃繖鏃秎ast.pre涓虹┖锛屾墍浠ユ彁鍓嶆妸last.pre鍙栧嚭鏉�
+			Node pre = last.pre ;
+			dealNode(now, last) ;
 			if(first != last){
-				//鍦╠ealNode鏂规硶涓紝鍙兘瑕佹妸last浠庨槦鍒椾腑绉婚櫎锛岃繖鏃秎ast.pre涓虹┖锛屾墍浠ユ彁鍓嶆妸last.pre鍙栧嚭鏉�
-				Node pre = last.pre ;
-				dealNode(now, last) ;
 				return pre ;
 			}else{
 				//鍋滄
@@ -142,10 +143,12 @@
 	 * @param node 鑺傜偣
 	 */
 	private void dealNode(Long now, Node node){
-		TcpDownCommandObj obj = (TcpDownCommandObj)node.obj ;
-		boolean removeNode = obj.dealSelf(now) ;
-		if(removeNode){
-			TcpDownCommandCache.removeNode(node);
+		if(node != null && node.obj != null){
+			TcpDownCommandObj obj = (TcpDownCommandObj)node.obj ;
+			boolean removeNode = obj.dealSelf(now) ;
+			if(removeNode){
+				TcpDownCommandCache.removeNode(node);
+			}
 		}
 	}
 

--
Gitblit v1.8.0