import 'dart:async'; import 'package:star_lock/talk/startChart/proto/talk_data.pb.dart'; class TalkDataRepository { // 创建一个私有的构造函数,防止外部创建实例 TalkDataRepository._(); // 使用 _instance 来保存单例对象 static final TalkDataRepository _instance = TalkDataRepository._(); // 提供一个静态方法来获取单例实例 static TalkDataRepository get instance => _instance; // 创建一个 StreamController final StreamController _talkDataStreamController = StreamController.broadcast(); // 提供一个方法来获取 Stream Stream get talkDataStream => _talkDataStreamController.stream; // 提供一个方法来添加 TalkData 到 Stream void addTalkData(TalkData talkData) { _talkDataStreamController.add(talkData); } // 提供一个方法来关闭 StreamController void dispose() { _talkDataStreamController.close(); } }