From 57c673aa3e83677bcf5d30b4b45d06bae6609db8 Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: 星期四, 08 八月 2024 16:14:40 +0800
Subject: [PATCH] 优化:获取会话

---
 ard-work/src/main/java/com/ruoyi/alarm/config/AsyncConfiguration.java |   68 +++++++++++++++++++++++++++++++++-
 1 files changed, 66 insertions(+), 2 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/alarm/config/AsyncConfiguration.java b/ard-work/src/main/java/com/ruoyi/alarm/config/AsyncConfiguration.java
index 7549bcd..95838d8 100644
--- a/ard-work/src/main/java/com/ruoyi/alarm/config/AsyncConfiguration.java
+++ b/ard-work/src/main/java/com/ruoyi/alarm/config/AsyncConfiguration.java
@@ -4,6 +4,7 @@
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
+import org.springframework.scheduling.annotation.AsyncConfigurer;
 import org.springframework.scheduling.annotation.EnableAsync;
 import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
 
@@ -18,8 +19,8 @@
  * @Version: 1.0
  **/
 @Configuration
-@EnableAsync(proxyTargetClass = true)
-public class AsyncConfiguration {
+@EnableAsync
+public class AsyncConfiguration{
     @Value("${ThreadPoolTask.corePoolSize}")
     Integer corePoolSize;
     @Value("${ThreadPoolTask.maxPoolSize}")
@@ -50,4 +51,67 @@
         executor.initialize();
         return executor;
     }
+    @Bean("guideExecutor")
+    public Executor guideExecutor(){
+        ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
+        //閰嶇疆鏍稿績绾跨▼鏁�
+        executor.setCorePoolSize(corePoolSize);
+        //閰嶇疆鏈�澶х嚎绋嬫暟
+        executor.setMaxPoolSize(maxPoolSize);
+        //閰嶇疆闃熷垪澶у皬
+        executor.setQueueCapacity(queueCapacity);
+        //绾跨▼鐨勫悕绉板墠缂�
+        executor.setThreadNamePrefix("guideExecutor-");
+        //绾跨▼娲昏穬鏃堕棿锛堢锛�
+        executor.setKeepAliveSeconds(keepAliveSeconds);
+        //绛夊緟鎵�鏈変换鍔$粨鏉熷悗鍐嶅叧闂嚎绋嬫睜
+        executor.setWaitForTasksToCompleteOnShutdown(true);
+        //璁剧疆鎷掔粷绛栫暐
+        executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());
+        //鎵ц鍒濆鍖�
+        executor.initialize();
+        return executor;
+    }
+    @Bean("globalExecutor")
+    public Executor globalExecutor(){
+        ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
+        //閰嶇疆鏍稿績绾跨▼鏁�
+        executor.setCorePoolSize(corePoolSize);
+        //閰嶇疆鏈�澶х嚎绋嬫暟
+        executor.setMaxPoolSize(maxPoolSize);
+        //閰嶇疆闃熷垪澶у皬
+        executor.setQueueCapacity(queueCapacity);
+        //绾跨▼鐨勫悕绉板墠缂�
+        executor.setThreadNamePrefix("globalExecutor-");
+        //绾跨▼娲昏穬鏃堕棿锛堢锛�
+        executor.setKeepAliveSeconds(keepAliveSeconds);
+        //绛夊緟鎵�鏈変换鍔$粨鏉熷悗鍐嶅叧闂嚎绋嬫睜
+        executor.setWaitForTasksToCompleteOnShutdown(true);
+        //璁剧疆鎷掔粷绛栫暐
+        executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());
+        //鎵ц鍒濆鍖�
+        executor.initialize();
+        return executor;
+    }
+    @Bean("msgExecutor")
+    public Executor msgExecutor(){
+        ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
+        //閰嶇疆鏍稿績绾跨▼鏁�
+        executor.setCorePoolSize(corePoolSize);
+        //閰嶇疆鏈�澶х嚎绋嬫暟
+        executor.setMaxPoolSize(maxPoolSize);
+        //閰嶇疆闃熷垪澶у皬
+        executor.setQueueCapacity(queueCapacity);
+        //绾跨▼鐨勫悕绉板墠缂�
+        executor.setThreadNamePrefix("msgExecutor-");
+        //绾跨▼娲昏穬鏃堕棿锛堢锛�
+        executor.setKeepAliveSeconds(keepAliveSeconds);
+        //绛夊緟鎵�鏈変换鍔$粨鏉熷悗鍐嶅叧闂嚎绋嬫睜
+        executor.setWaitForTasksToCompleteOnShutdown(true);
+        //璁剧疆鎷掔粷绛栫暐
+        executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());
+        //鎵ц鍒濆鍖�
+        executor.initialize();
+        return executor;
+    }
 }

--
Gitblit v1.9.3