1.Crie um StreamController no seu projeto Dart;
2.Adicione um ouvinte para essa Stream na função main;
3.Envie dados para a Stream a partir de diferentes funções;
import 'dart:async';
StreamController<String> streamController = StreamController<String>();
2) Adicionar um ouvinte para essa Stream na função main
void main() {
StreamSubscription streamSubscription =
streamController.stream.listen((String info) {
print(info);
},
3) Enviar dados para a Stream:
void requestData() {
streamController.add("${DateTime.now()} | Requisição com Future");
}
Future<void> requestDataAsync() async {
streamController.add("${DateTime.now()} | Requisição Assíncrona");
}
Future<void> sendDataAsync(Map<String, dynamic> toSend) async {
streamController.add("${DateTime.now()} | Adicionado ${toSend['name']}");
}