using System;
public delegate int AsyncMethod(int start,int end);//聲明一個delegate
public class AsyncDemo
{
public static void Main()
{
AsyncMethod async = new AsyncMethod(DoSum);//執行個體化delegate
IAsyncResult result = async.BeginInvoke(1, 100000);//開始異步調用
Console.WriteLine("開始工作了。"+DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
int sum = async.EndInvoke(result);//停止結束異步調用
Console.WriteLine("結果是:" + sum);
Console.WriteLine("結束工作了。" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
}
public static int DoSum(int start, int end)
int result = 0;
for (int i = start; i < end; i++)
{
result += i;
}
return result;
}