zoukankan      html  css  js  c++  java
  • C# 事件(1)

    下边Demo如果是在vs2012 下运行需要进入调试模式一遍才能正常运行出结果

    namespace ConsoleApplication2
    {
        public delegate void messageHandler(string msg);
    
        public class Connection
        {
            public event messageHandler MessageArried;
    
            private Timer pollTimer;
    
            public Connection()
            {
                pollTimer = new Timer(100);
                pollTimer.Elapsed += new ElapsedEventHandler(CheckForMsg);
            }
    
            public void Connect()
            {
                pollTimer.Start();
            }
    
            public void DisConnect()
            {
                pollTimer.Stop();
            }
    
            private static Random random = new Random();
    
            void CheckForMsg(object sources, ElapsedEventArgs e)
            {
                Console.WriteLine("Checking for new messages");
                if ((random.Next(9) == 0) && (MessageArried != null))//使用了委托语法,但语法略有不同,其含义为“事件是否有订阅者?”如果没有订阅者,MessageArrived就是null,也就不会引发事件。
                {
                    MessageArried("Hello Mum!");
                }
            }
        }
    
        class Display
        {
            public void DisplayMsg(string message)
            {
                Console.WriteLine("Msg arrived:{0}", message);
            }
        }
    
        class Program
        {
            static void Main(string[] args)
            {
                Connection conn = new Connection();
                Display display = new Display();
                conn.MessageArried += new messageHandler(display.DisplayMsg);
                conn.Connect();
    
                Console.ReadKey();
    
            }
    
        }
    }

    clip_image002

  • 相关阅读:
    java表格的使用 单元格绘制二
    Java表格的简单使用一
    Servlet接口五种方法介绍
    C# 图片识别
    asp.net 使用rabbitmq事例
    Windows下安装使用python的Flask框架
    python中闭包的理解
    sql中遍历字符串
    asp.net mvc easyui tree
    c# Castle Windsor简单例子
  • 原文地址:https://www.cnblogs.com/potoofly/p/2968986.html
Copyright © 2011-2022 走看看