diff --git a/threadpool/server/config/src/main/java/cn/hippo4j/config/notify/NotifyCenter.java b/threadpool/server/config/src/main/java/cn/hippo4j/config/notify/NotifyCenter.java index 6c7c6ab542..9f1b354d3a 100644 --- a/threadpool/server/config/src/main/java/cn/hippo4j/config/notify/NotifyCenter.java +++ b/threadpool/server/config/src/main/java/cn/hippo4j/config/notify/NotifyCenter.java @@ -28,6 +28,7 @@ import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.function.BiFunction; +import java.util.function.Supplier; /** * Unified event notify center. @@ -43,7 +44,7 @@ public class NotifyCenter { private DefaultSharePublisher sharePublisher; - private static EventPublisher eventPublisher = new DefaultPublisher(); + private static final Supplier publisherSupplier = DefaultPublisher::new; private static BiFunction, Integer, EventPublisher> publisherFactory; @@ -52,7 +53,7 @@ public class NotifyCenter { static { publisherFactory = (cls, buffer) -> { try { - EventPublisher publisher = eventPublisher; + EventPublisher publisher = publisherSupplier.get(); publisher.init(cls, buffer); return publisher; } catch (Throwable ex) {