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注入的方法
    二叉树的LCA(最近公共祖先)算法
    二叉树的计算
    @RestController和@Controller注解的区别
    单调栈与单调队列
    java中删除list指定元素遇到的问题
    随机打乱数组
    Mysql基本操作
    二叉树的构建
    synchronized修饰方法和对象的区别
  • 原文地址:https://www.cnblogs.com/fx2008/p/2244535.html
Copyright © 2011-2022 走看看