我眼中委托的真正面貌(三)
2009-05-14 08:28:38 来源:WEB开发网9.异步委托的实现
using System.Threading;
namespace AsyncDelegate
{
class Program
{
//定义委托
delegate void MyDelegate();
static void Main(string[] args)
{
//声明委托对象
MyDelegate ObjDelegate = new MyDelegate(ObjDelegateFun);
//使用异步方式
IAsyncResult ObjIr = ObjDelegate.BeginInvoke(null,null);
Console.WriteLine("委托方法执行中.");
Thread.Sleep(5000);
ObjDelegate.EndInvoke(ObjIr);
Console.ReadLine();
}
static private void ObjDelegateFun()
{
Thread.Sleep(5000);
Console.WriteLine("委托方法调用成功!");
}
}
}
所谓异步委托,主要用到了委托对象的BeginInvoke()方法以及EndInvoke()方法。和同步执行的Invoke()方法相比,这两个方法具有如下的特性:
更多精彩
赞助商链接