Flutter中如何实现异步操作,并解释一下Future和Stream的概念

发布于 2 个月前 作者 itying888 54 次浏览 最后一次编辑是 1 个月前 来自 分享

Flutter中如何实现异步操作,并请解释一下Future和Stream的概念。

Flutter中通过Future 或者Stream实现实现异步。

Future在未来只会获取一个值。Stream的字面意思是水流,Stream不像Future那样只会在未来获取一个值,它可以异步获取0个或者多个值。如果说Future是一个异步版本的int或者String,Stream则更像是异步版本的列表。

一、Flutter实现异步

Future<int> performAsyncOperation() {
  return Future.delayed(Duration(seconds: 2), () {
    // 异步操作的代码
    return 42;
  });
}

void main() async {
  int result = await performAsyncOperation();
  // 使用异步操作的结果
  print(result); 
}

二 、Stream实现异步

 Stream<int> createStream() {
  return Stream.periodic(Duration(seconds: 1), (i) => i);
}

void main() {
  createStream().listen((data) {
    // 处理数据流中的每个数据项
    print(data); 
  });
}

详情参考《Flutter+Getx仿小米商城项目实战视频教程-V3版》 学习地址:https://www.itying.com/goods-1176.html 《第三十八讲》、《第三十九讲》、《第四十讲》

回到顶部