多个委托方法的顺序执行

简介:
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("调用:方法三");
        }
    }
}
目录
相关文章
|
9月前
|
C++
成员初始化表的执行顺序与顺写顺序无关
成员初始化表的执行顺序与顺写顺序无关
66 0
|
9月前
|
存储 安全 IDE
C/C++ 作用域,生命周期,执行线程的概念
C/C++ 作用域,生命周期,执行线程的概念
111 2
|
编译器 C++
C++类对象构造顺序
C++类对象构造顺序
64 0
C++类对象构造顺序
|
缓存 Java 测试技术
让线程按顺序执行8种方法
  本文使用了7中方法实现在多线程中让线程按顺序运行的方法,涉及到多线程中许多常用的方法,不止为了知道如何让线程按顺序运行,更是让读者对多线程的使用有更深刻的了解。 使用的方法如下:
160 0
C#委托及线程操作
C#委托及线程操作
153 0
C#委托及线程操作
|
编译器 API
整合重复的初始化逻辑
整合重复的初始化逻辑
1250 0