diff --git a/detection/src/main/java/com/njcn/gather/detection/util/socket/cilent/NettyClient.java b/detection/src/main/java/com/njcn/gather/detection/util/socket/cilent/NettyClient.java index 107f303b..dbd4d31d 100644 --- a/detection/src/main/java/com/njcn/gather/detection/util/socket/cilent/NettyClient.java +++ b/detection/src/main/java/com/njcn/gather/detection/util/socket/cilent/NettyClient.java @@ -27,8 +27,6 @@ import org.springframework.stereotype.Component; import javax.annotation.PostConstruct; import javax.annotation.Resource; -import java.util.concurrent.Executors; -import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit; /** @@ -45,20 +43,6 @@ import java.util.concurrent.TimeUnit; @Component public class NettyClient { - // ========== TODO TEST-ONLY: 联调 BUSY 弹窗用,测试完成后整段删除 ========== - /** - * 测试期:连接源/设备失败时,延迟若干秒再释放检测锁,方便手动测试 BUSY 弹窗。 - * 正式上线时把 RELEASE_DELAY_FOR_TEST_SECONDS 改回 0 或直接删除调度逻辑。 - */ - private static final long RELEASE_DELAY_FOR_TEST_SECONDS = 300L; - private static final ScheduledExecutorService DELAYED_RELEASER = - Executors.newSingleThreadScheduledExecutor(r -> { - Thread t = new Thread(r, "lock-release-delay-test"); - t.setDaemon(true); - return t; - }); - // ========== /TODO TEST-ONLY ========== - @Resource private SocketSourceResponseService socketSourceResponseService; @@ -389,15 +373,9 @@ public class NettyClient { // 异步建连失败时前端原本静默,补一次通知避免用户黑屏等待 notifyFrontendError(param, handler); // 释放检测锁:抢锁后由 controller 异步发起的建连若失败,无法走 controller 兜底 - // TODO TEST-ONLY: 测试 BUSY 弹窗期间延迟释放,正式部署改回立即释放 if (param != null && param.getUserPageId() != null) { - final String userPageId = param.getUserPageId(); - DELAYED_RELEASER.schedule( - () -> DetectionLockManager.getInstance() - .releaseIfMatchPage(userPageId, "ASYNC_CONNECT_FAILED_DELAYED"), - RELEASE_DELAY_FOR_TEST_SECONDS, TimeUnit.SECONDS); - log.warn("[TEST-ONLY] 检测锁将在 {}s 后释放(连接失败延迟释放,便于测试 BUSY 弹窗),userPageId={}", - RELEASE_DELAY_FOR_TEST_SECONDS, userPageId); + DetectionLockManager.getInstance() + .releaseIfMatchPage(param.getUserPageId(), "ASYNC_CONNECT_FAILED"); } } @@ -489,15 +467,9 @@ public class NettyClient { notifyFrontendError(param, handler); // 释放检测锁,理由同 onConnectionFailure - // TODO TEST-ONLY: 测试 BUSY 弹窗期间延迟释放,正式部署改回立即释放 if (param != null && param.getUserPageId() != null) { - final String userPageId = param.getUserPageId(); - DELAYED_RELEASER.schedule( - () -> DetectionLockManager.getInstance() - .releaseIfMatchPage(userPageId, "ASYNC_CONNECT_EXCEPTION_DELAYED"), - RELEASE_DELAY_FOR_TEST_SECONDS, TimeUnit.SECONDS); - log.warn("[TEST-ONLY] 检测锁将在 {}s 后释放(连接异常延迟释放,便于测试 BUSY 弹窗),userPageId={}", - RELEASE_DELAY_FOR_TEST_SECONDS, userPageId); + DetectionLockManager.getInstance() + .releaseIfMatchPage(param.getUserPageId(), "ASYNC_CONNECT_EXCEPTION"); } }