From 707f8db2227a6031f230e35895ea1c5f7ff03bd6 Mon Sep 17 00:00:00 2001
From: Junjie <DELL@qq.com>
Date: 星期四, 18 十二月 2025 14:43:52 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/core/network/fake/ZyCrnFakeConnect.java |   21 ++++++++++++++++++++-
 1 files changed, 20 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/zy/core/network/fake/ZyCrnFakeConnect.java b/src/main/java/com/zy/core/network/fake/ZyCrnFakeConnect.java
index a91560b..570b9aa 100644
--- a/src/main/java/com/zy/core/network/fake/ZyCrnFakeConnect.java
+++ b/src/main/java/com/zy/core/network/fake/ZyCrnFakeConnect.java
@@ -29,6 +29,7 @@
 
     @Override
     public boolean disconnect() {
+        try { executor.shutdownNow(); } catch (Exception ignore) {}
         return true;
     }
 
@@ -90,6 +91,9 @@
         moveZ(this.crnStatus.getLevel(), sourcePosZ);
         this.crnStatus.setStatus(CrnStatusType.FETCHING.id);
         sleep(2000);
+        if (Thread.currentThread().isInterrupted()) {
+            return;
+        }
 
         this.crnStatus.setLoaded(1);
         this.crnStatus.setStatus(CrnStatusType.PUT_MOVING.id);
@@ -97,6 +101,9 @@
         moveZ(this.crnStatus.getLevel(), destinationPosZ);
         this.crnStatus.setStatus(CrnStatusType.PUTTING.id);
         sleep(2000);
+        if (Thread.currentThread().isInterrupted()) {
+            return;
+        }
         this.crnStatus.setLoaded(0);
         this.crnStatus.setStatus(CrnStatusType.WAITING.id);
     }
@@ -109,6 +116,9 @@
                 initSourcePosZ++;
                 this.crnStatus.setLevel(initSourcePosZ);
                 sleep(1000);
+                if (Thread.currentThread().isInterrupted()) {
+                    return;
+                }
             }
         }else {
             int moveLength = sourcePosZ - destinationPosZ;
@@ -117,6 +127,9 @@
                 initSourcePosZ--;
                 this.crnStatus.setLevel(initSourcePosZ);
                 sleep(1000);
+                if (Thread.currentThread().isInterrupted()) {
+                    return;
+                }
             }
         }
     }
@@ -129,6 +142,9 @@
                 initSourcePosY++;
                 this.crnStatus.setBay(initSourcePosY);
                 sleep(1000);
+                if (Thread.currentThread().isInterrupted()) {
+                    return;
+                }
             }
         }else {
             int moveLength = sourcePosY - destinationPosY;
@@ -137,6 +153,9 @@
                 initSourcePosY--;
                 this.crnStatus.setBay(initSourcePosY);
                 sleep(1000);
+                if (Thread.currentThread().isInterrupted()) {
+                    return;
+                }
             }
         }
     }
@@ -145,7 +164,7 @@
         try {
             Thread.sleep(ms);
         } catch (InterruptedException e) {
-            e.printStackTrace();
+            Thread.currentThread().interrupt();
         }
     }
 }

--
Gitblit v1.9.1