فهرست منبع

消息消费线程池日志打印

zuypeng 1 سال پیش
والد
کامیت
a399321b68
1فایلهای تغییر یافته به همراه4 افزوده شده و 1 حذف شده
  1. 4 1
      car-wash-service/src/main/java/com/kym/service/mq/MnsHandler.java

+ 4 - 1
car-wash-service/src/main/java/com/kym/service/mq/MnsHandler.java

@@ -42,7 +42,7 @@ public class MnsHandler {
 //            new LinkedBlockingQueue<>(10000));
 
     // 增加饱和策略(建议用CallerRunsPolicy)
-    private final static ExecutorService executorService = new ThreadPoolExecutor(
+    private final static ThreadPoolExecutor executorService = new ThreadPoolExecutor(
             4, 8, 60, TimeUnit.SECONDS,
             new LinkedBlockingQueue<>(10000),
             new ThreadPoolExecutor.CallerRunsPolicy()); // 关键修改点
@@ -73,6 +73,9 @@ public class MnsHandler {
                     log.error("消息处理异常", e);
                     // 增加恢复逻辑(如休眠后重试)
                     try { TimeUnit.SECONDS.sleep(5); } catch (InterruptedException ex) { break; }
+                }finally {
+                    //打印线程池状态
+                    log.info("Pool Size:{} ,Active Thread Count:{},Task Queue Size:{},Completed Task Count: {}" ,executorService.getPoolSize(),executorService.getActiveCount(),executorService.getQueue().size(), executorService.getCompletedTaskCount());
                 }
             }
         });