Dart中的Future

Future简介

Future提供了一种异步编程的方式,它可以让我们在不阻塞当前任务的情况下执行一个任务,并在任务完成后获得相应的结果。

使用Future的步骤

1.创建一个Future对象;
2.为Future指定一个回调函数;
3.将Future对象传递给dart:async库的run()方法;
4.在回调函数中处理Future的结果。

Future的使用例子

// 创建一个Future对象
Future future = Future(() {
    
    
  // 执行一些耗时的操作
  print('开始执行耗时操作');
  // 模拟耗时操作
  Future.delayed(Duration(seconds: 4), () {
    
    
    return '耗时操作完成!';
  });
});

// 为Future指定一个回调函数
future.then((data) {
    
    
  print(data);
});

// 将Future对象传递给dart:async库的run()方法
run(future);

常用的使用场景

常与async一起使用

Async是Dart中的一个关键字,用于标记异步函数。async函数返回一个Future对象,并且可以使用await关键字来等待函数的执行结果。

例如:

Future getData(String url) async {
var response = await http.get(url);
return response.body;
}

猜你喜欢

转载自blog.csdn.net/yikezhuixun/article/details/129636286