From 2268d28bb43c2b3d7b4dfd96d35c0a844390c5bd Mon Sep 17 00:00:00 2001 From: endian11 <Dana_Lee1016@126.com> Date: 星期四, 02 一月 2020 14:56:09 +0800 Subject: [PATCH] 完成时间分发库的编写,测试正常 --- app/src/main/java/safeluck/drive/evaluation/cEventCenter/ObjectPool.java | 30 ++++++++++++++++++++++++++---- 1 files changed, 26 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/safeluck/drive/evaluation/cEventCenter/ObjectPool.java b/app/src/main/java/safeluck/drive/evaluation/cEventCenter/ObjectPool.java index 3eafce0..acaa4e5 100644 --- a/app/src/main/java/safeluck/drive/evaluation/cEventCenter/ObjectPool.java +++ b/app/src/main/java/safeluck/drive/evaluation/cEventCenter/ObjectPool.java @@ -8,12 +8,20 @@ * All Rights Saved! Chongqing AnYun Tech co. LTD */ public abstract class ObjectPool<T extends PooledObject> { + /** + * 瀵硅薄瀹瑰櫒 + */ + private T[] mContainer; - private T[] mContainer;//瀵硅薄瀹瑰櫒 + /** + * 瀵硅薄閿� + */ + private final Object LOCK = new Object(); - private final Object LOCK = new Object();//瀵硅薄閿� - - private int length;//姣忔杩斿洖瀵硅薄閮芥斁鍒版暟鎹湯绔紝length琛ㄧず鍓嶉潰鍙敤瀵硅薄鏁� + /*** + * 姣忔杩斿洖瀵硅薄閮芥斁鍒版暟鎹湯绔紝length琛ㄧず鍓嶉潰鍙敤瀵硅薄鏁� + */ + private int length; public ObjectPool(int capacity) { mContainer = createObjPool(capacity); @@ -60,4 +68,18 @@ } return obj; } + + /** + * 鎶婂璞℃斁鍥炴睜閲岄潰 + * @param obj + */ + public final void returnObj(T obj){ + synchronized (LOCK){ + int size = mContainer.length; + if (length < size){ + mContainer[length] = obj; + length++; + } + } + } } -- Gitblit v1.8.0