happmaoo 发表于 2013-1-19 04:09:12

c#多线程如何从线程返回值

public delegate void ResultCallback(int i);
public class A //被调用函数所在的类
{
   public A(ResultCallback callback)
   {
   this._result = callback;
   }
   private ResultCallback _result;
   private int i = 0;
   public void calledMethod()
   {
   i++;
   if (this._result != null)
   {
       this._result(i);
   }
   }
}
public class B //主线程
{
   public void hello(int i)
   {
   Console.WriteLine(i.ToString());
   }
   public void testMethod() //运行的函数,启动多线程
   {
   ResultCallback callback = new ResultCallback(hello);
   A temp = new A(callback);
   Thread t = new Thread(new ThreadStart(temp.calledMethod));
   t.Start();
   t.Join();
   }
}
页: [1]
查看完整版本: c#多线程如何从线程返回值