From 855bf7559274cbc7e3008eaac313e49e48d14e33 Mon Sep 17 00:00:00 2001 From: zjj <3272660260@qq.com> Date: 星期一, 15 一月 2024 20:27:08 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/thread/SiemensCrnThread.java | 24 ++++++++++++++++-------- 1 files changed, 16 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/zy/core/thread/SiemensCrnThread.java b/src/main/java/com/zy/core/thread/SiemensCrnThread.java index ac81663..17570b0 100644 --- a/src/main/java/com/zy/core/thread/SiemensCrnThread.java +++ b/src/main/java/com/zy/core/thread/SiemensCrnThread.java @@ -40,6 +40,10 @@ private CrnProtocol crnProtocol; private boolean resetFlag = false; + public boolean isRunning = true; + + public Long sign = System.currentTimeMillis(); + /** * 鍫嗗灈鏈烘槸鍚﹀湪鍥炲師鐐硅繍鍔ㄤ腑鏍囪 */ @@ -53,7 +57,7 @@ @SuppressWarnings("InfiniteLoopStatement") public void run() { this.connect(); - while (true) { + while (isRunning) { try { int step = 1; Task task = MessageQueue.poll(SlaveType.Crn, slave.getId()); @@ -169,13 +173,13 @@ crnProtocol.setTemp2(siemensNet.getByteTransform().TransInt16(result.Content, 22)); crnProtocol.setTemp3(siemensNet.getByteTransform().TransInt16(result.Content, 24)); crnProtocol.setTemp4(siemensNet.getByteTransform().TransInt16(result.Content, 26)); - crnProtocol.setxSpeed(siemensNet.getByteTransform().TransInt16(result.Content, 28)); - crnProtocol.setySpeed(siemensNet.getByteTransform().TransInt16(result.Content, 32)); - crnProtocol.setzSpeed(siemensNet.getByteTransform().TransInt16(result.Content, 36)); - crnProtocol.setxDistance(siemensNet.getByteTransform().TransInt16(result.Content, 40)); - crnProtocol.setyDistance(siemensNet.getByteTransform().TransInt16(result.Content, 44)); - crnProtocol.setxDuration(siemensNet.getByteTransform().TransInt16(result.Content, 48)); - crnProtocol.setyDuration(siemensNet.getByteTransform().TransInt16(result.Content, 52)); + crnProtocol.setxSpeed(siemensNet.getByteTransform().TransSingle(result.Content, 28)); + crnProtocol.setySpeed(siemensNet.getByteTransform().TransSingle(result.Content, 32)); + crnProtocol.setzSpeed(siemensNet.getByteTransform().TransSingle(result.Content, 36)); + crnProtocol.setxDistance(siemensNet.getByteTransform().TransSingle(result.Content, 40)); + crnProtocol.setyDistance(siemensNet.getByteTransform().TransSingle(result.Content, 44)); + crnProtocol.setxDuration(siemensNet.getByteTransform().TransSingle(result.Content, 48)); + crnProtocol.setyDuration(siemensNet.getByteTransform().TransSingle(result.Content, 52)); OutputQueue.CRN.offer(MessageFormat.format("銆恵0}銆慬id:{1}] <<<<< 瀹炴椂鏁版嵁鏇存柊鎴愬姛",DateUtils.convert(new Date()), slave.getId())); @@ -293,6 +297,10 @@ } } + public void requestStop() { + isRunning = false; + } + @Override public void close() { -- Gitblit v1.9.1