Bỏ qua để đến nội dung

Futures

🎯 Mục tiêu: Hiểu Future - async operations returning single value.


// Từ value
Future<int> future1 = Future.value(42);
// Delayed
Future<String> future2 = Future.delayed(
Duration(seconds: 1),
() => "Done"
);
// Async function
Future<String> fetchData() async {
await Future.delayed(Duration(seconds: 1));
return "Data";
}

fetchData()
.then((data) => print(data))
.catchError((error) => print("Error: $error"))
.whenComplete(() => print("Done"));

var futures = [
Future.delayed(Duration(seconds: 1), () => 1),
Future.delayed(Duration(seconds: 2), () => 2),
];
var results = await Future.wait(futures); // [1, 2]

  • Future cho single async value
  • await hoặc .then() để get value
  • Future.wait cho parallel