Flutter-了解Future及其用法

一、前言

最近在做Flutter网络这块,涉及到耗时操作,显然要用异步编程。在其他语言,比如java、c++等,会使用多线程来实现。而在Dart语言中,它是单线程+事件循环的设计模式,其中主要使用Future来实现异步操作,为了快速的了解Flutter的异步编程,需要熟练Futter的概念以及用法。

二、Future是什么

同步编程中,立即返回执行的结果或者抛出异常;而异步编程中,返回的是将要完成的结果未来。Future代表异步执行的未来。


var future = Future

上述代码在执行过程中,future是Future的一个实例,有两种状态,完成或者未完成。当调用异步方法的时候,返回的一个未完成的future对象,该对象等待方法中相关操作执行完成或者抛出异常。

void main() {
  print('start......');
  var future = getNetworkData();
  print(future);
  print('do other......');
}

Future<String> getNetworkData() {
  return Future(() {
    //执行其他耗时操作
    int result = 0;
    for (int i = 0; i < 100000; i++) {
      result += i;
    }
    return "result:$result";
  });
}

打印结果:


                
  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值