多个委托方法的顺序执行

简介:
using System;
namespace 委托和事件
{
    internal class Program
    {
        private static void Main(string[] args)
        {
            Action action = One;
            action += Two;
            action += Three;
            Delegate[] delegates = action.GetInvocationList(); //返回委托挂接的方法,通过他可以控制委托方法执行顺序
            foreach (Action delegateAction in delegates)
            {
                try
                {
                    delegateAction();
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
            }
            Console.Read();
        }
        private static void One()
        {
            Console.WriteLine("调用:方法一");
            throw new Exception("Err in one");
        }
        private static void Two()
        {
            Console.WriteLine("调用:方法二");
        }
        private static void Three()
        {
            Console.WriteLine("调用:方法三");
        }
    }
}
目录
打赏
0
0
0
0
4
分享
相关文章
|
10月前
|
C++
成员初始化表的执行顺序与顺写顺序无关
成员初始化表的执行顺序与顺写顺序无关
67 0
Swift开发——循环执行方式
Swift语言中的循环主要包括`for-in`和`while`结构。`for-in`适用于遍历数字区间、字符串和字典,支持使用`stride`函数定制步进。字典遍历时,可以用二元元组`(k, v)`访问键值对。`while`循环有标准形式和`repeat-while`形式,确保至少执行一次循环体。程序示例展示了`for-in`和不同`while`结构的用法,包括计算阶乘、奇数和、加密字符串以及最大公约数和最小公倍数。
62 0
Swift开发——循环执行方式
原来可以这么操作—修改子View绘制顺序
周一的早上,由于项目的开发做的差不多了,正在等待测试结果的我就开始发呆,思考端午节的去处~
347 0
原来可以这么操作—修改子View绘制顺序
让线程按顺序执行8种方法
  本文使用了7中方法实现在多线程中让线程按顺序运行的方法,涉及到多线程中许多常用的方法,不止为了知道如何让线程按顺序运行,更是让读者对多线程的使用有更深刻的了解。 使用的方法如下:
162 0
整合重复的初始化逻辑
整合重复的初始化逻辑
1250 0