C#异步初步知识介绍
C#异步初步知识介绍
//首先准备好,要进行异步的方法(能异步的,最好不多线程)
privatestringMethodName(intNum,outintNum2)
{
Num2=Num;
return"HelloWorld";
}
//定义与方法同签名的委托
privatedelegatestringDelegateName(intNum,outintNum2);
//程序入口
privatevoidRun()
{
//实例化委托
DelegateNamedn=newDelegateName(MethodName);
inti;
//异步开始
IAsyncResultiar=dn.BeginInvoke(1,outi,null,null);
//去做别的事
//…………
//做完别的事
//异步结束
stringr=dn.EndInvoke(outi,iar);
MessageBox.Show(i.ToString()+" "+r);
}
//最后的结果应该是:i=1,r="HelloWorld"
privatestringMethodName(intNum,outintNum2)
{
Num2=Num;
return"HelloWorld";
}
//定义与方法同签名的委托
privatedelegatestringDelegateName(intNum,outintNum2);
//程序入口
privatevoidRun()
{
//实例化委托
DelegateNamedn=newDelegateName(MethodName);
inti;
//异步开始
IAsyncResultiar=dn.BeginInvoke(1,outi,null,null);
//去做别的事
//…………
//做完别的事
//异步结束
stringr=dn.EndInvoke(outi,iar);
MessageBox.Show(i.ToString()+" "+r);
}
//最后的结果应该是:i=1,r="HelloWorld"