From 0b1cae75fe601bacc1b610bcd4f0c58a365e06e3 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期二, 12 七月 2022 10:32:45 +0800
Subject: [PATCH] 动态人物管理增加自检机制。防止内存溢出

---
 src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/PresetQueryResponseMessageHandler.java |    2 +-
 src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/media/MediaController.java                                                     |    6 ------
 src/main/resources/8042900_www.wvp-pro.cn.jks                                                                                       |    0 
 src/main/java/com/genersoft/iot/vmp/gb28181/bean/PresetQuerySipReq.java                                                             |    2 +-
 src/main/java/com/genersoft/iot/vmp/conf/DynamicTask.java                                                                           |   16 ++++++++++++++++
 5 files changed, 18 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/conf/DynamicTask.java b/src/main/java/com/genersoft/iot/vmp/conf/DynamicTask.java
index 1f18338..1885632 100644
--- a/src/main/java/com/genersoft/iot/vmp/conf/DynamicTask.java
+++ b/src/main/java/com/genersoft/iot/vmp/conf/DynamicTask.java
@@ -5,6 +5,7 @@
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Bean;
+import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler;
 import org.springframework.stereotype.Component;
 
@@ -120,4 +121,19 @@
     public Runnable get(String key) {
         return runnableMap.get(key);
     }
+
+    /**
+     * 姣忎簲鍒嗛挓妫�鏌ュけ鏁堢殑浠诲姟锛屽苟绉婚櫎
+     */
+    @Scheduled(cron="0 0/5 * * * ?")
+    public void execute(){
+        if (futureMap.size() > 0) {
+            for (String key : futureMap.keySet()) {
+                if (futureMap.get(key).isDone()) {
+                    futureMap.remove(key);
+                    runnableMap.remove(key);
+                }
+            }
+        }
+    }
 }
diff --git a/src/main/java/com/genersoft/iot/vmp/domain/req/PresetQuerySipReq.java b/src/main/java/com/genersoft/iot/vmp/gb28181/bean/PresetQuerySipReq.java
similarity index 90%
rename from src/main/java/com/genersoft/iot/vmp/domain/req/PresetQuerySipReq.java
rename to src/main/java/com/genersoft/iot/vmp/gb28181/bean/PresetQuerySipReq.java
index e2f3ec6..d1971a2 100644
--- a/src/main/java/com/genersoft/iot/vmp/domain/req/PresetQuerySipReq.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/bean/PresetQuerySipReq.java
@@ -1,4 +1,4 @@
-package com.genersoft.iot.vmp.domain.req;
+package com.genersoft.iot.vmp.gb28181.bean;
 
 
 /**
diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/PresetQueryResponseMessageHandler.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/PresetQueryResponseMessageHandler.java
index 3662600..45265c5 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/PresetQueryResponseMessageHandler.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/PresetQueryResponseMessageHandler.java
@@ -1,6 +1,6 @@
 package com.genersoft.iot.vmp.gb28181.transmit.event.request.impl.message.response.cmd;
 
-import com.genersoft.iot.vmp.domain.req.PresetQuerySipReq;
+import com.genersoft.iot.vmp.gb28181.bean.PresetQuerySipReq;
 import com.genersoft.iot.vmp.gb28181.bean.*;
 import com.genersoft.iot.vmp.gb28181.transmit.callback.DeferredResultHolder;
 import com.genersoft.iot.vmp.gb28181.transmit.callback.RequestMessage;
diff --git a/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/media/MediaController.java b/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/media/MediaController.java
index 54bd3f6..94fe8df 100644
--- a/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/media/MediaController.java
+++ b/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/media/MediaController.java
@@ -36,13 +36,7 @@
     private IRedisCatchStorage redisCatchStorage;
 
     @Autowired
-    private IStreamPushService streamPushService;
-
-    @Autowired
     private IMediaService mediaService;
-
-    @Autowired
-    private IMediaServerService mediaServerService;
 
 
     /**
diff --git a/src/main/resources/8042900_www.wvp-pro.cn.jks b/src/main/resources/8042900_www.wvp-pro.cn.jks
new file mode 100644
index 0000000..3e51206
--- /dev/null
+++ b/src/main/resources/8042900_www.wvp-pro.cn.jks
Binary files differ

--
Gitblit v1.8.0