//package com.backendsys.modules.sse.emitter;
//
//import com.backendsys.modules.sse.utils.SseEmitterUTF8;
//
//import java.util.concurrent.ConcurrentHashMap;
//
//public class __SseEmitterManager {
//    // 单例实例
//    private static final __SseEmitterManager INSTANCE = new __SseEmitterManager();
//    // 存储SseEmitter的线程安全列表
//    public final ConcurrentHashMap<String, SseEmitterUTF8> emitters = new ConcurrentHashMap<>();
//
//    // 私有构造函数，防止外部直接实例化
//    private __SseEmitterManager() {}
//    // 公共静态方法，获取单例实例
//    public static __SseEmitterManager getInstance() {
//        return INSTANCE;
//    }
//    // 公共方法，供外部添加SseEmitter
//    public void addEmitter(String userId, SseEmitterUTF8 emitter) {
//        this.emitters.put(userId, emitter);
//        emitter.onTimeout(() -> {
//            System.out.println("emitter (onTimeout) 超时, userId: " + userId);
//            this.emitters.remove(emitter);
//        });
//        emitter.onCompletion(() -> {
//            System.out.println("emitter (onCompletion) 中断, userId: " + userId);
//            this.emitters.remove(emitter);
//        });
//    }
//    // 公共方法，供外部移除SseEmitter
//    public SseEmitterUTF8 getEmitter(String userId) {
//        // 根据用户ID获取 SseEmitter
//        return this.emitters.get(userId);
//    }
//    // 公共方法，供外部移除SseEmitter
//    public void removeEmitter(SseEmitterUTF8 emitter) {
//        this.emitters.remove(emitter);
//    }
//}