From ec63fb17c5ba3e5b2a5a4106c25b4e249a2f980f Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期二, 22 十一月 2022 18:44:51 +0800
Subject: [PATCH] changes

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/utils/CountDownLatchUtil.java |   37 ++++++++++++++++++++++++++++++++++++-
 1 files changed, 36 insertions(+), 1 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/utils/CountDownLatchUtil.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/utils/CountDownLatchUtil.java
index 228133e..c2d0425 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/utils/CountDownLatchUtil.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/utils/CountDownLatchUtil.java
@@ -1,7 +1,9 @@
 package com.sandu.ximon.admin.utils;
 
-import lombok.Data;
+import org.apache.commons.lang.RandomStringUtils;
 import org.springframework.context.annotation.Configuration;
+
+import java.util.concurrent.TimeUnit;
 
 import java.util.HashMap;
 import java.util.Map;
@@ -27,9 +29,42 @@
         }
     }
 
+    /**
+     * 鍒犻櫎CountDown
+     * @param id
+     * @param countDownLatch  瀵硅薄
+     * @param timeout  绛夊緟鏃堕棿
+     */
+    public void remove(String id, CountDownLatch countDownLatch, int timeout) {
+        if (countDownLatch == null) {
+            return;
+        }
+        try {
+            countDownLatch.await(timeout, TimeUnit.MILLISECONDS);
+            if (data != null) {
+                data.remove(id);
+            }
+        } catch (InterruptedException e) {
+            throw new RuntimeException(e);
+        }
+    }
+
+    /**
+     * 娌℃湁绛夊緟鏃堕棿鐨勫垹闄�
+     * @param id
+     */
     public void remove(String id) {
         if (data != null) {
             data.remove(id);
         }
     }
+
+    public CountDownResultUtil createCoutDown(int times) {
+        CountDownLatchUtil countDownLatchUtil = new CountDownLatchUtil();
+        CountDownLatch countDownLatch = new CountDownLatch(times);
+        //鑾峰彇涓�涓�7浣嶉殢鏈烘暟
+        String str = RandomStringUtils.randomAlphanumeric(7);
+        countDownLatchUtil.push(str, countDownLatch);
+        return new CountDownResultUtil(str, countDownLatch);
+    }
 }

--
Gitblit v1.9.3