From 1e6561acc89b7105c1dcbf5395845d6046f1453d Mon Sep 17 00:00:00 2001 From: zhubaomin <zhubaomin> Date: 星期五, 21 二月 2025 16:55:09 +0800 Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV --- pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/PrefixedDataAvailablePool.java | 30 +++++++++++++++--------------- 1 files changed, 15 insertions(+), 15 deletions(-) diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/PrefixedDataAvailablePool.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/PrefixedDataAvailablePool.java index 57d7ec0..ba5b121 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/PrefixedDataAvailablePool.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/PrefixedDataAvailablePool.java @@ -6,47 +6,47 @@ public class PrefixedDataAvailablePool { - protected static HashMap<String, List<PrefixedDataAvailable>> pool = new HashMap<String, List<PrefixedDataAvailable>>() ; + protected static HashMap<String, List<PrefixedDataAvailable>> pool = new HashMap<>() ; /** * 鐢熸垚瀵硅薄 * 绾跨▼闈炲畨鍏ㄧ殑锛屾墍浠ョ敤鍒皊ynchronized - * @param className - * @return + * @param clazz 棰勫鐞嗙被 + * @return 棰勫鐞嗙被瀵硅薄 */ public static synchronized PrefixedDataAvailable getInstance(Class<?> clazz)throws Exception { if(pool == null){ - pool = new HashMap<String, List<PrefixedDataAvailable>>() ; + pool = new HashMap<>() ; } String className = clazz.getName() ; PrefixedDataAvailable obj = null ; List<PrefixedDataAvailable> list = pool.get(className) ; if(list == null){ - list = new ArrayList<PrefixedDataAvailable>() ; - }else{ + list = new ArrayList<>() ; + pool.put(className, list) ; + }else if(list.size() > 0){ obj = list.get(0) ; + list.remove(0) ; } - if(obj != null){ - list.remove(0) ; - return obj ; - }else{ + if(obj == null){ try { - obj = (PrefixedDataAvailable)clazz.newInstance(); + obj = (PrefixedDataAvailable)clazz.getDeclaredConstructor().newInstance() ; + //obj = (PrefixedDataAvailable)clazz.newInstance(); } catch (Exception e) { throw new Exception( "鐢�" + className + "鐢熸垚瀹炰緥澶辫触锛�"); } - return obj ; } + return obj ; } /** * 鎶婂璞℃斁鍥炴睜涓� - * @param className - * @return + * @param clazz 棰勫鐞嗙被 + * @param obj 棰勫鐞嗙被瀵硅薄 */ - public static void freeInstance(Class<?> clazz, PrefixedDataAvailable obj)throws Exception { + public static void freeInstance(Class<?> clazz, PrefixedDataAvailable obj) { if(pool != null){ String className = clazz.getName() ; List<PrefixedDataAvailable> list = pool.get(className) ; -- Gitblit v1.8.0