如何获得异步函数执行的时间?

时间:2021-03-01 14:30:36

标签: flutter dart asynchronous

如果我的 http 请求持续时间超过 1 秒,我需要做一些操作(但不能停止它,所以我不能使用持续时间属性) 这在 Dart 中怎么可能?

1 个答案:

答案 0 :(得分:1)

您可以使用来自 Timerdart:async 实现此目的:

import 'dart:async';

Future<String> fetchData() async {
  await Future.delayed(Duration(seconds: 5));
  return 'data';
}

Future<void> main() async {
  Timer timer;
  timer = Timer(Duration(seconds: 1), () => print("Timer expired!"));
  final data = await fetchData();
  timer.cancel();
  print(data);
}