六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 43|回复: 0

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

[复制链接]

升级  74.2%

2220

主题

2220

主题

2220

主题

榜眼

Rank: 8Rank: 8

积分
6710
 楼主| 发表于 2013-1-19 04:09:12 | 显示全部楼层 |阅读模式
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();
   }
}
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表