From 33d53e2b84128684fdcfe36af7f495ce9249e94b Mon Sep 17 00:00:00 2001 From: "DESKTOP-C3M45P4\\dengdan" Date: Thu, 3 Jul 2025 16:29:27 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BF=98=E5=8E=9F=E7=81=B5=E8=84=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ljsd/jieling/logic/arena/CrossLingmaiLogic.java | 7 +++++++ .../main/java/com/ljsd/jieling/thread/task/MinuteTask.java | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/CrossLingmaiLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/CrossLingmaiLogic.java index 1d5f4855c..0ca719ac5 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/CrossLingmaiLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/CrossLingmaiLogic.java @@ -259,6 +259,13 @@ public class CrossLingmaiLogic { if (crossGroup == -1) { return; } + String lockKey = "SERVER_LINGMAI_REWARD_LOCK" + RedisKey.Delimiter_colon + crossGroup; + boolean lock = RedisUtil.getInstence().lock(lockKey, TimeUtils.ONE_SECOND * 60); + if (!lock) { + //没有拿到锁直接返回 + LOGGER.info("跨服灵脉,奖励结算, key:{} 跨服分组 ={},未获取到锁",lockKey, crossGroup); + return; + } String rkey1 = RedisUtil.getInstence().getKey(RedisKey.CROSS_LINGMAI_RANK_PERSON, crossGroup + RedisKey.Delimiter_colon + "1",false); String rkey2 = RedisUtil.getInstence().getKey(RedisKey.CROSS_LINGMAI_RANK_PERSON, crossGroup + RedisKey.Delimiter_colon + "2",false); Set arenaRank1 = RedisUtil.getInstence().getReverseZset(rkey1, 0, -1); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java b/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java index a338a3704..923c5b3f8 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java @@ -307,7 +307,7 @@ public class MinuteTask extends Thread { CrossLingmaiLogic.getInstance().sendOccypyReward(); } if(hour == 20 && minute == 0){ - CrossLingmaiLogic.getInstance().sendOccypyReward(); + CrossLingmaiLogic.getInstance().sendMailReward(); } } }