关于多次执行异步函数
来源:11-3 Flutter Android混合开发实战-集成与调用【Android技术与Flutter融合】

RobinYeung
2020-08-06
开发过程中遇到一个问题:
void main() async {
Future<dynamic> call1 = call;
print(await call1);
print(await call1);
print(await call);
print(await call);
print(call1.runtimeType);
print(call.runtimeType);
}
dynamic get call async {
print("hello");
return "world";
}
对于以上代码,输出如下:
hello
world
world
hello
world
hello
world
_Future<dynamic>
hello
_Future<dynamic>
我的问题是,为什么第二次 await call1时,call里面的hello并没有打印,但多次await call时,里面的hello都会打印。它们的runtimeType明明也是相同的。
遇到这个问题,我的实际情况是想从外面传一个函数进来,如果遇到错误时可以再次回调执行重试,但传进来赋值在Future里再次await,却没有执行,请教老师
写回答
1回答
-
CrazyCodeBoy
2020-08-07
你将Future<dynamic> call1改成var call1试一下
012020-08-07
相似问题