zoukankan      html  css  js  c++  java
  • C#委托事件实例

    public delegate void TimeoutHandler(int connectID);

    public class UserOnLineChecker

    {

      public event TimeoutHandler SomeConnectionTimeOuted;

      private Timer timerForCheckOnLine;

      public UserOnLineChecker()

      {

        this.SomeConnectionTimeOuted = null;

      }

      private void OnLineCheckAction(object state)
          {

        if (this.SomeConnectionTimeOuted != null)
                {
                    this.SomeConnectionTimeOuted(state as int);
                }

      }

      public void Start()
           {
                this.timerForCheckOnLine = new Timer(new TimerCallback(this.OnLineCheckAction), null, 3* 60000, 3 * 60000);
            }

    }

    调用:

    public class UserLogin

    {

      private UserOnLineChecker tcpUserOnLineChecker;

      public UserLogin()

      {

          this.tcpUserOnLineChecker = new UserOnLineChecker();
                    //this.tcpUserOnLineChecker.Initialize(this.onLineCheckSpan);
                    this.tcpUserOnLineChecker.SomeConnectionTimeOuted += new TimeoutHandler(this.tcpUserOnLineChecker_SomeConnectionTimeOuted);

      }

      private void tcpUserOnLineChecker_SomeConnectionTimeOuted(int connectID)
            {

          //处理回调事件
              }

      public void Start()
            {
                this.tcpUserOnLineChecker.Start();//调用UserOnLineChecker类中委托注册事件方法
            }

    }

  • 相关阅读:
    统计SQL
    记一次惨痛教训
    window ssh 连接 本地虚拟机ubuntu 16
    js undefined 笔记
    java new java.text.SimpleDateFormat("yyyyMM01").format(date)
    java 反射
    mapinfo使用
    EnableAutoConfiguration注解说明
    Eureka Server 代码分析01
    BigDecimal 学习比较
  • 原文地址:https://www.cnblogs.com/fx2008/p/2244535.html
Copyright © 2011-2022 走看看