Dart中的Future

简介: 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;

}


相关文章
|
监控 算法 Java
异步编程 - 05 基于JDK中的Future实现异步编程(中)_CompletableFuture
异步编程 - 05 基于JDK中的Future实现异步编程(中)_CompletableFuture
47 0
|
4月前
|
Dart 前端开发 JavaScript
Flutter&Dart-异步编程Future、Stream极速入门
Flutter&Dart-异步编程Future、Stream极速入门
82 4
Flutter&Dart-异步编程Future、Stream极速入门
|
4月前
|
Dart API C语言
Dart ffi 使用问题之想在C/C++中创建异步线程来调用Dart方法,如何操作
Dart ffi 使用问题之想在C/C++中创建异步线程来调用Dart方法,如何操作
|
4月前
|
Dart 编译器 API
Dart ffi 使用问题之在C++线程中无法直接调用Dart函数的问题如何解决
Dart ffi 使用问题之在C++线程中无法直接调用Dart函数的问题如何解决
|
7月前
|
Java
深入理解 Java 异步编程:Future 和 CompletableFuture 的全面比较
深入理解 Java 异步编程:Future 和 CompletableFuture 的全面比较
293 0
|
存储 Dart 数据库
Dart异步之Future以及async、await的使用
Dart异步之Future以及async、await的使用
230 2
|
Java
异步编程 - 04 基于JDK中的Future实现异步编程(上)_Future & FutureTask 源码解析
异步编程 - 04 基于JDK中的Future实现异步编程(上)_Future & FutureTask 源码解析
78 0
|
Java
异步编程 - 06 基于JDK中的Future实现异步编程(中)_CompletableFuture源码解析
异步编程 - 06 基于JDK中的Future实现异步编程(中)_CompletableFuture源码解析
63 0
|
Java
异步编程 - 05 基于JDK中的Future实现异步编程(中)_CompletableFuture2
异步编程 - 05 基于JDK中的Future实现异步编程(中)_CompletableFuture2
69 0
|
Java
Java异步编程Future应用
Java异步编程Future应用
64 0