dart中的Future与async/await

结论

  • 异步函数:使用aync关键字标记的函数,其返回值是一个范型化的Future对象,这样的函数我们称之为异步函数
  • 有两种方式调用异步函数:
    • 直接调用。直接调用的返回结果是一个范型化的Futrue类,范型参数的类型是异步函数的返回的值的类型,即:假设异步函数最后的语句是return ‘a’;,那么该函数的返回类型为Future。要想最终获得异步函数真正的返回值,还要对返回的Future类型的对象调用then方法,因此一般把直接调用和调用then方法连起来写,即:
      someAsyncFunc().then(callback);
    • 使用await同步调用。使用await调用异步函数时,程序会等待异步函数执行完成之后,直接将真正的返回值返回,然后执行接下去的语句。
  • 什么时候使用async关键字
    • 如果当前函数体中使用了await关键字,则必需要在当前函数的签名中使用async关键字
    • 比较耗时的、且其他代码调用时可能不需要等待其返回的函数,可以使用async关键字

验证

程序

import 'dart:io';

void main() async {
   
  print('${DateTime.now()}:开始调用第一个异步方法'
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值