From b726dc97538b7d4ba71fd06c14161017dd67c2b7 Mon Sep 17 00:00:00 2001
From: xubinbin <1323875150@qq.com>
Date: 星期三, 10 五月 2023 15:38:22 +0800
Subject: [PATCH] "@schedule"是Spring框架提供的一种定时任务执行机制,默认情况下它是单线程执行,项目中多次使用fixedRate按指定频率执行任务(不管前面任务是否已经完成),在同时执行多个定时任务时可能会出现阻塞和性能问题,为了解决这种单线程瓶颈问题,将定时任务的执行机制改为支持多线程

---
 src/main/java/com/genersoft/iot/vmp/service/IDeviceChannelService.java |   31 +++++++++++++++++++++++++++++++
 1 files changed, 31 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/service/IDeviceChannelService.java b/src/main/java/com/genersoft/iot/vmp/service/IDeviceChannelService.java
index c192dd5..66dbe07 100644
--- a/src/main/java/com/genersoft/iot/vmp/service/IDeviceChannelService.java
+++ b/src/main/java/com/genersoft/iot/vmp/service/IDeviceChannelService.java
@@ -56,4 +56,35 @@
      * 鏌ヨ閫氶亾鎵�灞炵殑璁惧
      */
     List<Device> getDeviceByChannelId(String channelId);
+
+    /**
+     * 鎵归噺鍒犻櫎閫氶亾
+     * @param deleteChannelList 寰呭垹闄ょ殑閫氶亾鍒楄〃
+     */
+    int deleteChannels(List<DeviceChannel> deleteChannelList);
+
+    /**
+     * 鎵归噺涓婄嚎
+     */
+    int channelsOnline(List<DeviceChannel> channels);
+
+    /**
+     * 鎵归噺涓嬬嚎
+     */
+    int channelsOffline(List<DeviceChannel> channels);
+
+    /**
+     *  鑾峰彇涓�涓�氶亾
+     */
+    DeviceChannel getOne(String deviceId, String channelId);
+
+    /**
+     * 鐩存帴鎵归噺鏇存柊閫氶亾
+     */
+    void batchUpdateChannel(List<DeviceChannel> channels);
+
+    /**
+     * 鐩存帴鎵归噺娣诲姞
+     */
+    void batchAddChannel(List<DeviceChannel> deviceChannels);
 }

--
Gitblit v1.8.0