Flutter 当我们等待void方法时,如何在dart中运行代码
如何在代码中同步或异步执行Flutter 当我们等待void方法时,如何在dart中运行代码,flutter,dart,Flutter,Dart,如何在代码中同步或异步执行secondMethod void _firstMethod() async { await _secondMethod(); } void _secondMethod() async { await _someCalculations(); }``` 从: 尽管异步函数可能会执行耗时的操作,但它不会等待这些操作。相反,异步函数仅在遇到其第一个等待表达式(详细信息)之前执行。然后它返回一个未来对象,仅在等待表达式完成后才恢复执行 \u firstMet
secondMethod
void _firstMethod() async {
await _secondMethod();
}
void _secondMethod() async {
await _someCalculations();
}```
从:
尽管异步函数可能会执行耗时的操作,但它不会等待这些操作。相反,异步函数仅在遇到其第一个等待表达式(详细信息)之前执行。然后它返回一个未来对象,仅在等待表达式完成后才恢复执行
将一直同步运行到第一个\u firstMethod
关键字李>wait
- 然后,它将遇到对
的调用李>\u secondMethod
- 同样,将调用
并同步运行到第一次等待,这是\u secondMethod
函数\u someCalculations
- 将异步调用此函数,在所需时间后,它将返回其值
- 从而完成了第二种方法的剩余部分
- 它将返回到
,最后结束它\u firstMethod
在上面的同一链接中,您应该将async/await看作是编写看起来同步的异步代码的一种方式。这样,当需要时,您可以更容易地将其理解为线性信息流。这是否意味着void somethod()async{}等于Future somethod()async{}?不。没有
void somethod()async{}
这样的东西。从中可以看出,当添加async关键字时,您应该修改返回值,以备将来使用。