庖丁解牛看委托和事件(续)
时间:2022-05-04
本文章向大家介绍庖丁解牛看委托和事件(续),主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
上一篇文章:庖丁解牛——深入解析委托和事件之后,以一题面试题来总结事件
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
namespace CallChange
{
public class Call
{
static void Main(string[] args)
{
MessageMonitoring mm = new MessageMonitoring();
//添加监听事件的响应函数
mm.OnValueChange += new MMEventHandle((s, e) =>
{
Console.WriteLine(e.Value);
});
mm.Run();
}
}
//参数e
public class MMEventArgs : EventArgs
{
public int Value { get; set; }
}
public delegate void MMEventHandle(object sender, MMEventArgs e);
//信息监控的类,当Value改变的时候,出发事件OnValueChange
public class MessageMonitoring
{
public event MMEventHandle OnValueChange;
private int _value;
public void Run()
{
Thread thread = new Thread(() =>
{
while (true)
{
Thread.Sleep(1000);
++Value;
}
});
thread.Start();
}
//属性改变
public int Value
{
get { return _value; }
set
{
if (_value != value)
{
_value = value;
if (OnValueChange != null)
{
OnValueChange(this, new MMEventArgs { Value = _value });
}
}
}
}
}
}
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- bash命令使用详解
- 实例详解Linux 中的命令链接操作符
- Python 为什么不支持 switch 语句?
- centos安装jdk1.8时出现没有/lib/ld-linux.so.2:这个文件的原因分析
- Linux多线程编程快速入门
- Linux添加swap分区的方法
- linux下vsftpd的安装及配置使用详细步骤(推荐)
- Linux分区格式化的命令
- Linux调试工具GDB使用简易教程
- Linux 挂载分区的方法
- 使用Python生成Shell命令,批量执行程序代码解析
- 基于Ubuntu 18.04配置固定IP的方法教程
- 详细解读linux下swap分区的作用
- Linux下将源文件编译成目标文件的过程解析
- Linux使用vim编辑文件保存时报E514:write error (file system full?)问题解决