using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApp1
{
class Program
{
public delegate void MyFunction(string msg);
public static void Main(string[] args)
{
MyFunction fn = StartA;
fn.BeginInvoke("【B】要开始运行了!", asyncCallback=> {
for (int i = 1; i <= 1000; i++)
{
Console.WriteLine(" 【B】运行了" + i + "‰");
};
},null);
Console.WriteLine("【A】要开始运行了!");
for (int i = 1; i <= 1000; i++)
{
Console.WriteLine(" 【A】运行了" + i + "‰");
};
Console.ReadKey();
}
public static void StartA(string msg)
{
Console.WriteLine(msg);
}
}
}
运行结果
public delegate void AsyncDelegate();
private AsyncDelegate asyncDl;
asyncDl = new AsyncDelegate(() =>
{
//todo
});
AsyncCallback callBack = new AsyncCallback((s) =>
{
//todo
});
asyncDl.BeginInvoke(callBack, null); //启动执行
当异步方法执行完毕会调用callBack方法