熟悉JavaScript的朋友应该知道,在ES6中引入了等待和异步的语法,这些语法可以轻松执行不同步的编程并摆脱恢复地狱。作为一种新语言,没有理由不继承这种优秀质量自然,DART中有等待和异步语言,让我们看看。
那么,为什么要使用异步编程?不能仅通过同步解决它?
实际上,在大多数情况下,同步就足够了,但是在以下情况下,同步场景仍然有缺陷。
总而言之,如果某些操作需要大量时间,则可以使用异步编程。
异步是该方法的描述符。如果您想使用等待,则必须使用async来使用:
请注意,未来对象通常遵循等待。
首先查看使用异步编程的示例:
上面的代码最初是从数据库中耗尽时间的数据,但没有想象结果。原因是获取订单方法是一种异步方法,因此不会立即返回,这将导致结果打印失败。
用异步反弹上述代码:
我们在使用异步和等待的过程中使用了未来。java中的未来表示线程的执行结果。DART中的future是异步执行的结果。
未来有两个州:未完成或完成。
当一开始执行异步功能时,将返回未完成的未来。未来的未来和其他异步执行或失败。
无论异步程序是成功还是失败,它最终都会返回一个状态。
可以生成异步返回的未来。指示时返回的特定类型。例如,未来代表一个字符串,未来表示没有返回值。
以下是两个不同的回报:
以下是一个例外示例:
在异步函数中,可以直接捕获catch:
上面介绍的fetchuserrorder()是未来,表明异步执行的过程。
因此,如果它是一种同步方法,例如在main()函数中,如何调用异步方法并获取返回值?
肯定不可能等待,因为等待只能在异步方法中调用。您目前可以使用当时的语句:
当时的语句将等待异步执行以返回结果,然后处理结果,实际上等同于JavaScript中的回调。
以上是异步的用法和DART等待。
最受欢迎的解释,最深的干货,最简单的教程,您不知道的许多技巧正在等待您发现!
欢迎注意我的公共帐户:“程序的事情”,了解技术并更好地了解您!
