解决包装器类型启动时注册线程池不实时问题.

pull/39/head
chen.ma 3 years ago
parent 68b4e07f61
commit b40fc747c0

@ -70,11 +70,14 @@ public class CacheData {
Runnable runnable = () -> {
wrap.setLastCallMd5(md5);
listener.receiveConfigInfo(content);
};
listener.getExecutor().execute(runnable);
try {
listener.getExecutor().execute(runnable);
} catch (Exception ex) {
log.error("Failed to execute listener. message :: {}", ex.getMessage());
}
}
public void setContent(String content) {

@ -52,10 +52,10 @@ public final class DynamicThreadPoolPostProcessor implements BeanPostProcessor {
.keepAliveTime(2000)
.timeUnit(TimeUnit.MILLISECONDS)
.workQueue(QueueTypeEnum.ARRAY_BLOCKING_QUEUE)
.capacity(1)
.capacity(1024)
.allowCoreThreadTimeOut(true)
.threadFactory("dynamic-threadPool-init-config")
.rejected(new ThreadPoolExecutor.DiscardOldestPolicy())
.threadFactory("dynamic-threadPool-change-config")
.rejected(new ThreadPoolExecutor.AbortPolicy())
.build();
@Override
@ -84,10 +84,8 @@ public final class DynamicThreadPoolPostProcessor implements BeanPostProcessor {
* @param dynamicThreadPoolWrap
*/
protected void registerAndSubscribe(DynamicThreadPoolWrapper dynamicThreadPoolWrap) {
executorService.execute(() -> {
fillPoolAndRegister(dynamicThreadPoolWrap);
subscribeConfig(dynamicThreadPoolWrap);
});
fillPoolAndRegister(dynamicThreadPoolWrap);
subscribeConfig(dynamicThreadPoolWrap);
}
/**

Loading…
Cancel
Save