C# Task.WhenAll
.C# Task.WhenAll
有时候我们需要同时执行一些操作,然后把这些操作的结果进行汇总,以达到用异步处理降低操作耗时的效果,此时我们会考虑使用Task,而Task.WhenAll则排上了用场。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | async void TestTaskWhenAll() { var total =10; Task< string >[] tasks = new Task< string >[total]; for ( int i = 0; i < total; i++) { tasks[i] = Convert( "test " + i ); } await Task.WhenAll(tasks); foreach ( var task in tasks) { Debug.WriteLine( "task.Id =" + task.Id + " task.Status=" + task.Status + " result:" + task.Result); } return ; } Random rnd = new Random(); async Task Convert( string str) { await Task.Delay(rnd.Next(1000,6000)); Debug.Print(str+ " OK" ); return "task " + str; } |
结果:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | test 5 OK test 7 OK test 9 OK test 4 OK test 2 OK test 8 OK test 1 OK test 6 OK test 10 OK test 0 OK test 3 OK task.Id =4894 task.Status=RanToCompletion result:task C:\Users\Administrator\source\repos\MSTextSpeech\MSTextSpeech\bin\x86\Debug\net48\temp-637835462530097716 task.Id =4896 task.Status=RanToCompletion result:task C:\Users\Administrator\source\repos\MSTextSpeech\MSTextSpeech\bin\x86\Debug\net48\temp-637835462515158794 task.Id =4898 task.Status=RanToCompletion result:task C:\Users\Administrator\source\repos\MSTextSpeech\MSTextSpeech\bin\x86\Debug\net48\temp-637835462508434632 task.Id =4900 task.Status=RanToCompletion result:task C:\Users\Administrator\source\repos\MSTextSpeech\MSTextSpeech\bin\x86\Debug\net48\temp-637835462530342270 task.Id =4902 task.Status=RanToCompletion result:task C:\Users\Administrator\source\repos\MSTextSpeech\MSTextSpeech\bin\x86\Debug\net48\temp-637835462508404465 task.Id =4904 task.Status=RanToCompletion result:task C:\Users\Administrator\source\repos\MSTextSpeech\MSTextSpeech\bin\x86\Debug\net48\temp-637835462503610679 task.Id =4906 task.Status=RanToCompletion result:task C:\Users\Administrator\source\repos\MSTextSpeech\MSTextSpeech\bin\x86\Debug\net48\temp-637835462518147200 task.Id =4908 task.Status=RanToCompletion result:task C:\Users\Administrator\source\repos\MSTextSpeech\MSTextSpeech\bin\x86\Debug\net48\temp-637835462504196737 task.Id =4910 task.Status=RanToCompletion result:task C:\Users\Administrator\source\repos\MSTextSpeech\MSTextSpeech\bin\x86\Debug\net48\temp-637835462510625275 task.Id =4912 task.Status=RanToCompletion result:task C:\Users\Administrator\source\repos\MSTextSpeech\MSTextSpeech\bin\x86\Debug\net48\temp-637835462505016507 task.Id =4914 task.Status=RanToCompletion result:task C:\Users\Administrator\source\repos\MSTextSpeech\MSTextSpeech\bin\x86\Debug\net48\temp-637835462526342482 |
fffffffffffffffff
test red font.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
2017-03-22 webBrowser.Document.Cookie取不到HttpOnly的Cookie,取Cookie不完整