【发布时间】:2018-07-12 19:12:20
【问题描述】:
没有'async'和'futures'如何等待Future完成?
在我使用的库中,所有函数都是异步的。
// must return <bool>
bool my_func(int x){
//returns Future<int>
var tmp = somelib.somefunc( ... );
//wait y
return x == y;
}
我试图写下我的“等待”,但是 使用 while 循环等待结果会冻结所有内容。
dynamic my_await(Future f) {
dynamic x;
bool completed = false;
f.then((v){
x = v;
completed = true;
});
do {} while (!completed);
return x;
}
Dart VM version: 1.24.3 (Mon Dec 18 16:57:48 2017) on "linux_x64"
【问题讨论】:
-
没有办法。最好解释一下您尝试使用 while 循环完成的内容。什么是“一切”?
标签: dart