多线程执行有返回值有参数的方法

1、创建一个多线程执行方法有相同类型返回值和相同类型参数的委托(创建在类外)

public delegate string FunctionDelegate(string str);

多线程执行的方法如下:

public string GetName(string name) // 函数
{
  return name;
}

2、代码

//将方法赋给委托
FunctionDelegate mc = new FunctionDelegate(GetName);
string name = "my name1";//输入参数
//执行多线程
IAsyncResult result = mc.BeginInvoke(name, null, null);
//获取多线程的返回值
string myname = mc.EndInvoke(result);//用于接收返回值

MessageBox.Show(myname);

代码截图和执行的效果如下:

原文地址:https://www.cnblogs.com/zhudezhiwansui/p/6708039.html