【问题标题】:Stop program execution until threads complete停止程序执行,直到线程完成
【发布时间】:2009-04-29 13:57:09
【问题描述】:

我有一个控制台应用程序,它初始化 4 个线程来执行一项长任务。我希望我的程序等到线程完成,然后完成程序执行。有没有办法阻止程序执行,让线程完成它们的工作?

【问题讨论】:

    标签: c# multithreading concurrency


    【解决方案1】:

    Threading.Thread.Join 就是你要找的。​​p>

    编辑:示例here

    【讨论】:

      【解决方案2】:

      在加入这些线程后加载您的应用程序,例如:

      Thread1.join();
      Thread2.join();
      Thread3.join();
      Thread4.join();
      
      
      startApplication();
      

      如果您能提供更详细的信息,我可以为您提供更好的帮助。

      【讨论】:

        【解决方案3】:

        根据您启动 4 个线程的方式,WaitHandle.WaitAll 可能是一个不错的起点...

        http://msdn.microsoft.com/en-us/library/z6w25xa6.aspx

        【讨论】:

          【解决方案4】:

          Thread.Join 是你想要的。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2013-12-12
            • 1970-01-01
            • 1970-01-01
            • 2011-11-11
            • 2015-07-04
            • 1970-01-01
            相关资源
            最近更新 更多