🎨 #2663 优化重复消息检查器多实例导致多守护线程的问题,修改成单例+定时任务线程池处理

This commit is contained in:
helloworldByChinese
2022-05-27 09:16:56 +08:00
committed by GitHub
parent 41bb3b9901
commit 95be03bf1c
7 changed files with 150 additions and 8 deletions

View File

@ -7,6 +7,7 @@ import lombok.Data;
import me.chanjar.weixin.common.api.WxErrorExceptionHandler;
import me.chanjar.weixin.common.api.WxMessageDuplicateChecker;
import me.chanjar.weixin.common.api.WxMessageInMemoryDuplicateChecker;
import me.chanjar.weixin.common.api.WxMessageInMemoryDuplicateCheckerSingleton;
import me.chanjar.weixin.common.session.InternalSession;
import me.chanjar.weixin.common.session.InternalSessionManager;
import me.chanjar.weixin.common.session.StandardSessionManager;
@ -48,7 +49,7 @@ public class WxMaMessageRouter {
0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<>(), namedThreadFactory);
this.sessionManager = new StandardSessionManager();
this.exceptionHandler = new LogExceptionHandler();
this.messageDuplicateChecker = new WxMessageInMemoryDuplicateChecker();
this.messageDuplicateChecker = WxMessageInMemoryDuplicateCheckerSingleton.getInstance();
}
/**
@ -59,7 +60,7 @@ public class WxMaMessageRouter {
this.executorService = executorService;
this.sessionManager = new StandardSessionManager();
this.exceptionHandler = new LogExceptionHandler();
this.messageDuplicateChecker = new WxMessageInMemoryDuplicateChecker();
this.messageDuplicateChecker = WxMessageInMemoryDuplicateCheckerSingleton.getInstance();
}
/**