委托是一个线程.
我们的cpu都是多进程式cpu.可以同时运行多个进程. exe运行后就是进程.
但是进程是不会工作的.工作的是线程.一个进程里至少有一个线程.
启动exe时的线程是主线程,它是可以控制窗体内所有控件侍蠢的.
举例: 当点击"提交"按钮时,后台需要处理大量并及其耗时的数据时,程序会处于"假卡死"状态孝启.这样用户体验不好.
如果用了委托.可以在点击"提交"按钮的时候让按钮老慎陪不可用,并出现一个滚动图片提示用户"系统正在处理...",这样就比较人性化了.
也就是说主线程控制按钮不可用,滚动图片显示.
委托处理数据.处理完毕后让按钮可用,滚动图片消失.
也可以理解为这是双线程或多线程的其实一种表现形式.
先不说委托,至少事件应销厅该用过吧?事件就是一种特殊的委托。
另外你可以把int i=5;代表一个整形变量i,并赋值为5,
那么假设让你用一个变量代表某个方法你会怎么写?
这就是委托,可以将方法抽象,宴散定义一个委托: public delegate void FunA();
那么 FunA就代表一个“方法变量类型”,可以定义这个“类型方法的亏祥隐变量”,并可以对这个变量赋值任何 返回值为void ,无参数的方法。
如 FunA a=func1;