【问题标题】:Why we need to use async when get data from server?为什么我们从服务器获取数据时需要使用异步?
【发布时间】:2019-03-19 13:20:36
【问题描述】:

我是 Flutter 的新手,我正在尝试从互联网上获取数据。我不明白为什么这个函数应该是异步的?

【问题讨论】:

  • 您好 Mydev,您自己已经完成了哪些研究?另外,你对如何学习 Flutter 有什么计划?你要在这里问每一个问题吗?
  • 我搜索了但解释不清楚

标签: dart flutter


【解决方案1】:

异步执行是一种防止应用(线程)在服务器响应到达之前被阻塞的方法,这可能是几秒钟甚至几分钟,并且对于大多数应用来说是不可接受的,尤其是在移动设备上。

Dart 默认运行单个线程(可以使用隔离启动其他线程)并且是事件驱动的。异步执行为来自服务器的响应到达的情况注册一个事件处理程序(根据您的示例)。

async/await 是一种确保代码以正确顺序运行的简单方法 - 在特定事件发生后。

这允许在一个执行线程等待某个事件时运行其他代码(事件处理程序)。

其他系统运行多个线程,其中等待响应的线程被暂停。 Dart 运行单个线程,但通过使用事件队列的异步执行来避免阻塞线程。

【讨论】:

    猜你喜欢
    • 2015-04-28
    • 2018-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-24
    • 1970-01-01
    • 2012-07-21
    • 1970-01-01
    相关资源
    最近更新 更多