在查看Async和Await时,我注意到可以使用任意数量的参数调用Task.WhenAll:
Threading.Tasks.Task.WhenAll(New Threading.Tasks.Task(New Action(Sub() Console.WriteLine("Hello"))),
New Threading.Tasks.Task(New Action(Sub() Console.WriteLine("Hello"))),
New Threading.Tasks.Task(New Action(Sub() Console.WriteLine("Hello"))),
New Threading.Tasks.Task(New Action(Sub() Console.WriteLine("Hello"))),
New Threading.Tasks.Task(New Action(Sub() Console.WriteLine("Hello"))))
为什么这样做,但是像Array.Reverse这样的方法不允许你传递任意数量的参数?
答案 0 :(得分:0)
结果看到.Net Reference Source网站上的代码,特别是the overload with an array of Tasks后,在查看此SO post后,我发现参数关键字(VB.Net中的ParamArray)允许您不传递任何参数,指定类型的任意数量的逗号分隔参数或指定类型的数组。
您可以将其视为在Javascript中解构数组或在Python中解析args数组。