Rah*_*ary 5 asynchronous dart flutter
我通常用 C++ 编程并知道 Sleep 函数是如何工作的,但是学习 dart (用于 flutter)现在我遇到了这个延迟函数
void countSeconds(s) {
for( var i = 1 ; i <= s; i++ ) {
Future.delayed(Duration(seconds: i), () => print(i));
}
}
Run Code Online (Sandbox Code Playgroud)
它在第 i 秒后打印值i,但不应该在 1 秒后打印 1,再过 2 秒后打印 2 (即 3 ),再过 3 秒后打印 3 (即 6 秒)等。它是如何工作的?
这将在 1 秒后打印 1,在 2 秒后打印 2,在 6 秒后打印 3。
for( var i = 1 ; i <= 5; i++ ) {
await Future.delayed(Duration(seconds: i), () => print(i));
}
Run Code Online (Sandbox Code Playgroud)
在异步编程中,您需要等待 future 返回结果。否则它将立即返回所有内容
| 归档时间: |
|
| 查看次数: |
3627 次 |
| 最近记录: |