From 7f5d914898c9d05942705ce7d80c0d14a8174df8 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期二, 19 十二月 2023 15:57:14 +0800
Subject: [PATCH] 1、common模块优化代码; 2、通信中间件优化代码,队列遍历由递归调用改为while循环,原因是队列数据量大时递归调易产生栈溢出,HashTable多线程应用时仍有线程安全问题,改为HashMap+同步锁; 3、RTU模拟器和模拟器控制服务增加report命令
---
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolUnit.java | 15 +++++++--------
1 files changed, 7 insertions(+), 8 deletions(-)
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolUnit.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolUnit.java
index 87020e3..0e280fb 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolUnit.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolUnit.java
@@ -44,16 +44,15 @@
AnnotationScan.getIntance() ;
//鍚勪釜鍗忚椹卞姩绫绘壂鎻忚嚜宸辩殑鍔熻兘鐮佹敞瑙�
- HashMap<String, AnnotationDriverVo> drivers = ProtocolCach.getDriverMap() ;
+ HashMap<String, AnnotationDriverVo> drivers = ProtocolCache.getDriverMap() ;
Collection<String> colDrivers = drivers.keySet() ;
- String totalProtocols = null ;
+ StringBuilder totalProtocols = new StringBuilder() ;
for(String protocolName : colDrivers){
- if(totalProtocols == null){
- totalProtocols = protocolName ;
- }else{
- totalProtocols += "锛�" + protocolName ;
+ if(!totalProtocols.isEmpty()){
+ totalProtocols.append("锛�") ;
}
- Driver dri = ProtocolCach.getDriver(protocolName) ;
+ totalProtocols.append(protocolName) ;
+ Driver dri = ProtocolCache.getDriver(protocolName) ;
if(dri != null){
dri.scanAnnotationCode();
}
@@ -71,7 +70,7 @@
*/
@SuppressWarnings("unused")
public boolean isOnlyOneProtocol(){
- HashMap<String, AnnotationDriverVo> drivers = ProtocolCach.getDriverMap() ;
+ HashMap<String, AnnotationDriverVo> drivers = ProtocolCache.getDriverMap() ;
return drivers.size() == 1 ;
}
--
Gitblit v1.8.0