From 3f7b3a0dc62d04c658e69b2e21c949fc73fc9d95 Mon Sep 17 00:00:00 2001 From: huangfeng Date: Wed, 11 Dec 2024 09:46:01 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E4=BC=98=E5=8C=96=E5=BC=80=E6=9C=BA?= =?UTF-8?q?=E6=97=B6=E5=80=99=E5=92=8C=E9=87=87=E9=9B=86=E5=BC=82=E5=B8=B8?= =?UTF-8?q?=E8=A7=A6=E5=8F=91=E7=9A=84=E6=96=AD=E7=BA=BF=E9=87=8D=E8=BF=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/xydl/cac/iec/IEDCollectService.java | 5 ++--- src/main/java/com/xydl/cac/iec/NetErrorThread.java | 4 ++++ src/main/java/com/xydl/cac/iec/RealTimeDataService.java | 2 ++ 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/xydl/cac/iec/IEDCollectService.java b/src/main/java/com/xydl/cac/iec/IEDCollectService.java index 7f360f5..dfefe1e 100644 --- a/src/main/java/com/xydl/cac/iec/IEDCollectService.java +++ b/src/main/java/com/xydl/cac/iec/IEDCollectService.java @@ -90,9 +90,8 @@ public class IEDCollectService { _webSocketServer.sendMessage(err, null); } if (ex instanceof SocketException) { - NetErrorThread thread = new NetErrorThread(); - thread.iedId = ied.getId(); - thread.run(); + NetErrorThread thread = new NetErrorThread(ied.getId()); + thread.start(); } } finally { iecClient.disconnect(); diff --git a/src/main/java/com/xydl/cac/iec/NetErrorThread.java b/src/main/java/com/xydl/cac/iec/NetErrorThread.java index de210c4..accfbdf 100644 --- a/src/main/java/com/xydl/cac/iec/NetErrorThread.java +++ b/src/main/java/com/xydl/cac/iec/NetErrorThread.java @@ -5,6 +5,10 @@ import com.xydl.cac.model.StaticVariable; public class NetErrorThread extends Thread { public int iedId; + public NetErrorThread(Integer iedid) { + iedId = iedid; + } + @Override public void run() { IecClient iecClient = StaticVariable.realTimeClientMap.get(iedId); diff --git a/src/main/java/com/xydl/cac/iec/RealTimeDataService.java b/src/main/java/com/xydl/cac/iec/RealTimeDataService.java index 8216e96..b34eb52 100644 --- a/src/main/java/com/xydl/cac/iec/RealTimeDataService.java +++ b/src/main/java/com/xydl/cac/iec/RealTimeDataService.java @@ -38,6 +38,8 @@ public class RealTimeDataService { try { this.startCollect(ied); } catch (Exception ignore) { + NetErrorThread thread = new NetErrorThread(ied.getId()); + thread.start(); } } }