【发布时间】:2020-07-08 12:47:40
【问题描述】:
我对@987654321@ 方法和异步等待有很大的问题。 我有 4 种方法类型:
private async Task Name(parameters)
{
}
以及如何调用所有 4 种方法来并行执行,并优化时间执行。焦点是构造函数。我尝试了很多东西。我在这里放了一些我在构造函数中的调用方式:
1.
Parallel.Invoke(
() => OnLoadPrometDanKorisnikDatum(KorisnikID, PomocnaDnDDatnaDat, DatumVrednost).Wait(),
() => OnLoadPrometNedelja(KorisnikID, PomocnaDnDDatnaDatNedelja).Wait(),
() => OnLoadPrometMesec(KorisnikID, PomocnaVrednostMeseciPicker).Wait(),
() => OnLoadPrometGodina(KorisnikID, 0).Wait()
);
这是可行的,但是当您进入第 2 或第 3 页时,会抛出 List 为空的异常,这会从 API(某些方法)获取数据。
- 尝试等待
Name方法时;那4次不起作用。 - 我尝试使方法无效,不要执行也不起作用的任务。
我不知道该怎么办。第一种方法执行时间约为 6.7 秒。第二种方法大约需要 4 秒。第三个 6 秒。第四个 6 秒。
最终需要我并行执行 4 个方法并等待来自该 4 个方法的所有数据。因为我稍后会根据该数据填充数据图表。是空列表抛出异常。
【问题讨论】:
-
这很难读;通过将代码格式化为代码,更清楚地说明您的问题是什么,等等,帮助那些试图帮助您的人。
-
感谢您的澄清;我已经投票决定重新开放。
标签: c# api xamarin.forms async-await task