From b397edee2be2dfcc3f28eeac50298b4de26b1afa Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期五, 13 十二月 2024 16:53:45 +0800 Subject: [PATCH] 取水口日取水量表中,出现一些大数,明显不正确,发析系统日志,发现一些阀控器会上报一些累计流量为0的数据,且无规律,推测是其不能从水表读取到累计流量时会上报0值。如果间歇上报0值,间歇上报一些非0值,非0值减去0值,就会出现大数,一天中出现几次那么会大数进行累加,数值将更大。为此变更算法,规避这种情况,但也会丢失一些流量值。 --- pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/OnLinePool.java | 9 +++++---- 1 files changed, 5 insertions(+), 4 deletions(-) diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/OnLinePool.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/OnLinePool.java index 2a0d4fc..30c764a 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/OnLinePool.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/OnLinePool.java @@ -6,7 +6,7 @@ public class OnLinePool { - protected static HashMap<String, List<OnLine>> pool = new HashMap<String, List<OnLine>>() ; + protected static HashMap<String, List<OnLine>> pool = new HashMap<>() ; /** * 鐢熸垚瀵硅薄 @@ -15,14 +15,14 @@ */ public static synchronized OnLine getInstance(Class<?> clazz)throws Exception { if(pool == null){ - pool = new HashMap<String, List<OnLine>>() ; + pool = new HashMap<>() ; } String className = clazz.getName() ; OnLine obj = null ; List<OnLine> list = pool.get(className) ; if(list == null){ - list = new ArrayList<OnLine>() ; + list = new ArrayList<>() ; }else{ obj = list.get(0) ; } @@ -32,7 +32,8 @@ return obj ; }else{ try { - obj = (OnLine)clazz.newInstance(); + obj = (OnLine)clazz.getDeclaredConstructor().newInstance() ; + //obj = (OnLine)clazz.newInstance(); } catch (Exception e) { throw new Exception( "鐢�" + className + "鐢熸垚瀹炰緥澶辫触锛�"); } -- Gitblit v1.8.0