From b06826593a66b7281767ba79b7f08000464923a4 Mon Sep 17 00:00:00 2001 From: Jack <46790855@qq.com> Date: Wed, 12 Nov 2025 10:46:39 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=86=E5=B8=83=E5=BC=8F=E9=94=81=E5=85=AC?= =?UTF-8?q?=E5=85=B1=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/utils/DistributedLockHelper.java | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/mall-common/src/main/java/com/suisung/mall/common/utils/DistributedLockHelper.java b/mall-common/src/main/java/com/suisung/mall/common/utils/DistributedLockHelper.java index ecd51293..289c365b 100644 --- a/mall-common/src/main/java/com/suisung/mall/common/utils/DistributedLockHelper.java +++ b/mall-common/src/main/java/com/suisung/mall/common/utils/DistributedLockHelper.java @@ -7,6 +7,34 @@ import org.springframework.stereotype.Component; import java.util.UUID; +/** + * 分布式锁工具类 + * + *

使用示例:

+ *
+ * {@code
+ * // 方式1: 简单使用
+ * DistributedLockHelper lockHelper = new DistributedLockHelper();
+ * if (lockHelper.tryLock("order_create_lock", 30)) {
+ *     try {
+ *         // 执行需要加锁的业务逻辑
+ *         createOrder();
+ *     } finally {
+ *         lockHelper.releaseLock("order_create_lock");
+ *     }
+ * }
+ *
+ * // 方式2: 使用自动续期锁
+ * try (DistributedLockHelper.LockHolder lockHolder =
+ *      lockHelper.tryLockWithAutoRenew("batch_process_lock", 30, 300)) {
+ *     if (lockHolder != null) {
+ *         // 执行长时间业务逻辑
+ *         processBatchData();
+ *     }
+ * }
+ * }
+ * 
+ */ @Component public class DistributedLockHelper {