diff --git a/src/main/java/com/youlai/boot/message/registry/SseSessionRegistry.java b/src/main/java/com/youlai/boot/message/registry/SseSessionRegistry.java index b0ef1487..502ec3a4 100644 --- a/src/main/java/com/youlai/boot/message/registry/SseSessionRegistry.java +++ b/src/main/java/com/youlai/boot/message/registry/SseSessionRegistry.java @@ -4,6 +4,8 @@ import com.youlai.boot.message.dto.OnlineUserDTO; import lombok.extern.slf4j.Slf4j; import org.springframework.context.event.ContextClosedEvent; import org.springframework.context.event.EventListener; +import org.springframework.core.Ordered; +import org.springframework.core.annotation.Order; import org.springframework.stereotype.Component; import org.springframework.web.servlet.mvc.method.annotation.SseEmitter; @@ -199,6 +201,7 @@ public class SseSessionRegistry { /** * 容器关闭时主动断开所有 SSE 连接,避免阻塞应用停止 */ + @Order(Ordered.HIGHEST_PRECEDENCE) @EventListener(ContextClosedEvent.class) public void destroy() { int count = emitterUserMap.size();