1)
import 'dart:async';
void main() {
final controller = StreamController();
final stream = controller.stream.asBroadcastStream();
final streamListener1 = stream.where((val) => val % 2 == 0).listen((val){
print('Listener 1 : $val');
});
final streamListener2 = stream.where((val) => val % 2 == 1).listen((val){
print('Listener 2 : $val');
});
controller.sink.add(1);
controller.sink.add(2);
controller.sink.add(3);
controller.sink.add(4);
controller.sink.add(5);
}

2)
import 'dart:async';
void main() {
playAllStream().listen((val) {
print(val);
});
}
Stream<int> playAllStream() async* {
yield* calculate(1);
yield* calculate(1000);
}
Stream<int> calculate(int number) async* {
for (int i = 0; i < 5; i++) {
yield i * number;
await Future.delayed(Duration(seconds: 1));
}
}

'개발이 좋아서 > Flutter가 좋아서' 카테고리의 다른 글
| [flutter] splash_screen (0) | 2022.12.22 |
|---|---|
| [flutter] HelloWorld 만들기 (0) | 2022.12.22 |
| [Dart] 4일차_비동기 프로그래밍_async, await (0) | 2022.12.15 |
| [Dart] 3일차_함수형 프로그래밍_활용 (1) | 2022.12.14 |
| [Dart] 3일차_함수형 프로그래밍_cascade (1) | 2022.12.14 |