c# – 从Task.WhenAll获取结果
发布时间:2020-12-15 08:39:20 所属栏目:百科 来源:网络整理
导读:我有多个任务返回我想要使用Task.WhenAll调用的相同对象类型(new [] {t1,t2,t3});并阅读结果. 当我尝试使用时 TaskListstring all = await Task.WhenAll(new Task[] { t,t2 }).ConfigureAwait(false); 我收到编译器错误 Cannot implicitly convert type ‘vo
我有多个任务返回我想要使用Task.WhenAll调用的相同对象类型(new [] {t1,t2,t3});并阅读结果.
当我尝试使用时 Task<List<string>> all = await Task.WhenAll(new Task[] { t,t2 }).ConfigureAwait(false); 我收到编译器错误
这两个任务都是类似的调用方法. private Task<List<string>> GetFiles(string path) { files = new List<string>(); return Task.Run(() => { //remove for brevity return files; }); } 解决方法
看起来你正在使用不返回值的WaitAll()重载.如果进行以下更改,则应该可以正常工作.
List<string>[] all = await Task.WhenAll(new Task<List<string>>[] { t,t2 }) .ConfigureAwait(false); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |