You can use Future.any
constructor to make a race condition
final result = await Future.any([
Future.value(42),
Future.delayed(const Duration(seconds: 3))
]);
You can also use Future.timeout
method
final result = await Future.value(42).timeout(const Duration(seconds: 3));