From f8c33ad3fb09dd0f70b68b74d59ce28761142bf0 Mon Sep 17 00:00:00 2001
From: Van333 <van666666@foxmail.com>
Date: 星期一, 14 十一月 2022 15:21:51 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/xm-20221107' into xm-20221107

---
 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