ear*_*ing 2 c# portable-class-library windows-8.1
我正在尝试在我的可移植类库中同时运行一些异步任务,但似乎不支持WhenAll方法.
我目前的解决方法是启动每个任务,然后等待每个任务:
var task1 = myService.GetData(source1);
var task2 = myService.GetData(source2);
var task3 = myService.GetData(source3);
// Now everything's started, we can await them
var result1 = await task1;
var result1 = await task2;
var result1 = await task3;
Run Code Online (Sandbox Code Playgroud)
有什么我想念的吗?我是否需要使用解决方法?
Ste*_*ary 12
有什么我想念的吗?
安装该软件包后,您可以使用它TaskEx.WhenAll作为替代Task.WhenAll:
var task1 = myService.GetData(source1);
var task2 = myService.GetData(source2);
var task3 = myService.GetData(source3);
// Now everything's started, we can await them
var results = await TaskEx.WhenAll(task1, task2, task3);
Run Code Online (Sandbox Code Playgroud)
PS考虑使用术语并行(CPU绑定)并行处理,并且术语并发用于一次执行多个操作.在这种情况下,(I/O绑定)任务是并发的但不是并行的.