This example demonstrates the use of Futures
and Streams
for asynchronous programming.
import 'dart:async';
void main() {
// Using a Future
print('Fetching data...');
fetchData().then((data) {
print('Data received: $data');
});
// Using a Stream
var numberStream = generateNumbers();
numberStream.listen((number) {
print('Received number: $number');
});
}
Future<String> fetchData() async {
await Future.delayed(Duration(seconds: 2));
return 'Sample Data';
}
Stream<int> generateNumbers() async* {
for (var i = 1; i <= 5; i++) {
await Future.delayed(Duration(seconds: 1));
yield i;
}
}
Leave a Reply