对于委托和事件的使用较多的主要主要是回调函数、事件驱动编程、解耦代码、实现插件、实现回调接口。下面是一个简单的委托及事件的使用;
//实例化对象
Download download = new Download();
//订阅事件 --执行匿名函数
download.downloadTaskEvent +=()=>{Console.WriteLine($"下载完成!");};
download.downloadTaskEvent +=()=>{Console.WriteLine($"关闭连接!");};
//下载文件命令
download.Downloading();
public class Download
{
public delegate void DownloadTask(); //定义委托
public event DownloadTask downloadTaskEvent; //通过委托定义事件
public void Downloading() //下载文件
{
Console.WriteLine("开始连接!");
for(int i=0;i<100;)
{
Thread.Sleep(100); //模拟下载进度
i+=10;
Console.WriteLine($"下载进度{i}%");
}
downloadTaskEvent.Invoke(); //使用委托
}
}
对于代码的学习个人还是比较推荐使用LinQPad进行学习的,相比VS2022软件启动快,同时软件没有复制的创建解决方案的繁琐。
标签:Console,委托,Download,downloadTaskEvent,事件,WriteLine,简单,download,public From: https://blog.csdn.net/qq_44774906/article/details/144095518