|
@@ -43,20 +43,14 @@ public class SseEmitterManager {
|
|
}
|
|
}
|
|
// 公共方法,供外部移除SseEmitter
|
|
// 公共方法,供外部移除SseEmitter
|
|
public void removeEmitter(SseEmitterUTF8 emitter) {
|
|
public void removeEmitter(SseEmitterUTF8 emitter) {
|
|
- this.emitters.values().removeIf(e -> e == emitter); // 安全移除
|
|
|
|
try {
|
|
try {
|
|
-
|
|
|
|
- System.out.println("-- removeEmitter ----------");
|
|
|
|
- System.out.println("emitters: " + this.emitters);
|
|
|
|
- System.out.println("emitter: " + emitter);
|
|
|
|
- System.out.println("---------------------------");
|
|
|
|
-
|
|
|
|
// System.out.println("(removeEmitter) emitter 关闭: " + emitter);
|
|
// System.out.println("(removeEmitter) emitter 关闭: " + emitter);
|
|
emitter.complete();
|
|
emitter.complete();
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
System.err.println("Failed to forcefully close emitter: " + e.getMessage());
|
|
System.err.println("Failed to forcefully close emitter: " + e.getMessage());
|
|
|
|
+ } finally {
|
|
|
|
+ this.emitters.values().removeIf(e -> e == emitter); // 安全移除
|
|
}
|
|
}
|
|
-
|
|
|
|
}
|
|
}
|
|
// 公共方法,供外部移除SseEmitter (全部)
|
|
// 公共方法,供外部移除SseEmitter (全部)
|
|
public void removeAllEmitter() {
|
|
public void removeAllEmitter() {
|