我刚刚有一个新的最后时刻的想法来承担任务,所以我正在运行到StackExchange以获得快速帮助。VB.NET 4.0:寻找执行多个线程,但等到所有线程都完成后再恢复
我想要做的是在一行中执行一系列的方法,每个方法都在自己的线程中。我希望应用程序等到所有这些线程都完成之后,程序才会恢复。它还必须使用托管线程(线程池)。
您可以提供哪些快速示例来帮助我一路走来?如果它太复杂,我应该知道哪些事情,以便我自己Google?
我刚刚有一个新的最后时刻的想法来承担任务,所以我正在运行到StackExchange以获得快速帮助。VB.NET 4.0:寻找执行多个线程,但等到所有线程都完成后再恢复
我想要做的是在一行中执行一系列的方法,每个方法都在自己的线程中。我希望应用程序等到所有这些线程都完成之后,程序才会恢复。它还必须使用托管线程(线程池)。
您可以提供哪些快速示例来帮助我一路走来?如果它太复杂,我应该知道哪些事情,以便我自己Google?
如果您使用的是.NET 4,最好使用任务并行库。
在这种情况下,最简单的方法听起来像Parallel.Invoke
,它将调用Action
代表的每个集合,使用适当的并行度,并且等到它们全部完成后才返回。
如果您需要更细粒度的控制,则可以将它们分别作为单独的Task
启动,并使用Task.WaitAll
等待一切完成。
非常好!我觉得很脏,因为它很容易。就好像我在欺骗系统= P。 – oscilatingcretin
“连续”中的“每个都在自己的线程中”与jive很差。线程之间有顺序。不要启动一个线程并等待它,不妨在没有线程的情况下运行代码。 –