怎样等某个方法或是函数执行完后再执行后面的语句

解决方案 »

  1.   

    可以用委托,还可以把这个函数体定义为一个有返回值的
    比如: 
    public int A()
    {
     .... 
     ....
    return 0;
    }
    调用的时候如何这个A返回的是0 就执行你要做的事情被。用委托也可以。
      

  2.   

    static void Main(string[] args)
            {
                ManualResetEvent[] manualEvents = new ManualResetEvent[4];
                for (int i = 0; i < 4; i++)
                {
                    manualEvents[i] = new ManualResetEvent(false);
                    System.Threading.ThreadPool.QueueUserWorkItem(new WaitCallback(Add), manualEvents[i]);
                }
                WaitHandle.WaitAll(manualEvents);
                Console.Write("All Thread Over");
                Console.ReadLine();
            }
            public static void Add(object stateinfo)
            {
                try
                {
                    Console.WriteLine("I am over");
                }
                catch
                {
                }
                finally
                {
                    ManualResetEvent manualEvent = (ManualResetEvent)stateinfo;
                    manualEvent.Set();
                }
            }
    执行结果:I am over
              I am over
              I am over
              I am over
              All Thread Over