Dart 1.8中的异步/等待功能

Dart 1.8中的异步/等待功能,dart,dart-editor,Dart,Dart Editor,它在1.8版本中是作为一个实验性的特性,比如enum,还是不是?我如何在省道编辑器中使用它?有没有一篇好文章或示例应用程序可以让我开始使用它 当它仍然是一个实验性的特性时,推荐什么用于pub包?在发布包中使用该功能是否合适?更新2 最近的夜间构建还支持async* void main(){ generate().listen((i)=>print(i)); } 流生成()异步*{ int i=0; 对于(int i=0;ix.isEven)); } 过滤器(ss,p)同步*{ 用于(ss中的va

它在1.8版本中是作为一个实验性的特性,比如enum,还是不是?我如何在省道编辑器中使用它?有没有一篇好文章或示例应用程序可以让我开始使用它


当它仍然是一个实验性的特性时,推荐什么用于pub包?在发布包中使用该功能是否合适?

更新2

最近的夜间构建还支持
async*

void main(){
generate().listen((i)=>print(i));
}
流生成()异步*{
int i=0;
对于(int i=0;i<100;i++){
收益率+i;
}
}
更新

1.9.0-edge.43534中已经支持标记为
sync*
(返回一个Iterable)的方法中的
yield
yield*

void main(){
var x=concat([0,1,2,3,4],[5,6,7,8,9]);
//x是一个迭代值1到9的Iterable
印刷品(x);
}
//标记为'sync*'的方法返回一个'Iterable'`
concat(可调左、可调右)同步*{
产量*左;
让与权;
}
void main(){
打印(过滤器([0,1,2,3,4,5],(x)=>x.isEven));
}
过滤器(ss,p)同步*{
用于(ss中的var s){
如果(p(s))产生s;
}
}
async*
还不支持生成器函数(返回流)

原创

基本支持已经可用。
有关更多详细信息,请参阅

main()异步{
//等待
打印(等待foo());
试一试{
打印(等待足迹());
}捕获(e){
印刷品(e);
}
//等待
var stream=新的stream.fromIterable([1,2,3,4,5]);
等待(流中的变量e){
印刷品(e);
}
}
foo()异步=>42;
fooThrows()异步=>抛出“任何东西”;
请参见