c#事件学习
2008-01-08 11:50
281 查看
本文,是自己在日常中用到的事件,然后自己总结的,没有查看相关文件,如果有高手能够看到本问,还希望能够指点下.谢谢
2008年1月7日
项目介绍:
联通hlr数据清理
本系统,由于现阶段有三个厂家的hlr需要清理,同时,由于联通的设备只支持单通道,因此,每个厂家只能支持一条条数据的做,不能够支持多条同时做,但是,各厂家之间是并行的,同时,由于西门子设备做一个查询后,需要停一下,释放一些东西,因此,做同样的数据两的清理,西门子做的时间明显大于其他厂家.
以前公司同事,采用的是每一个厂家,新开一个进程,每次执行500个号码,同时,这样有可能会使得其他设备的本次清理完成后,还在等待西门子设备清理,并且,如果有一个设备清理的过程中,出现错误,那么整个程序就死掉了.
2007年1月7日,该项目运行一段时间后,领导需要解决这个问题,因此,本人从公司调到联通,帮忙解决这个问题,查看系统流程后,打算改用事件,异步,回调等来做.
当天,自己给出了一个大概的模型,研究了下这个方式的可行性.
代码介绍如下:
using System;
namespace HlrTaskTest
using System;
namespace HlrTaskTest
using System;
using System.Collections;
namespace HlrTaskTest
使用了下事件,因此,现在记录下一般的写法:
首先
定义一个委托
public delegate void TaskEventHandle(object o,TaskEventArgs e);
委托中的TaskEventArgs 参数
public class TaskEventArgs:EventArgs
定义一个事件
public event HlrTaskTest.TaskEventHandle BeginTask;
并写一个保护方法
protected void OnBeginTask()
由于这个地方使用了回调函数,BeginInvoke参数中的最后一个参数,不知道写什么,所以,用的null
则需要写一个回调函数
private void TaskRunToEnd(IAsyncResult ar)
2008年1月7日
项目介绍:
联通hlr数据清理
本系统,由于现阶段有三个厂家的hlr需要清理,同时,由于联通的设备只支持单通道,因此,每个厂家只能支持一条条数据的做,不能够支持多条同时做,但是,各厂家之间是并行的,同时,由于西门子设备做一个查询后,需要停一下,释放一些东西,因此,做同样的数据两的清理,西门子做的时间明显大于其他厂家.
以前公司同事,采用的是每一个厂家,新开一个进程,每次执行500个号码,同时,这样有可能会使得其他设备的本次清理完成后,还在等待西门子设备清理,并且,如果有一个设备清理的过程中,出现错误,那么整个程序就死掉了.
2007年1月7日,该项目运行一段时间后,领导需要解决这个问题,因此,本人从公司调到联通,帮忙解决这个问题,查看系统流程后,打算改用事件,异步,回调等来做.
当天,自己给出了一个大概的模型,研究了下这个方式的可行性.
代码介绍如下:
using System;
namespace HlrTaskTest
using System;
namespace HlrTaskTest
using System;
using System.Collections;
namespace HlrTaskTest
使用了下事件,因此,现在记录下一般的写法:
首先
定义一个委托
public delegate void TaskEventHandle(object o,TaskEventArgs e);
委托中的TaskEventArgs 参数
public class TaskEventArgs:EventArgs
定义一个事件
public event HlrTaskTest.TaskEventHandle BeginTask;
并写一个保护方法
protected void OnBeginTask()
由于这个地方使用了回调函数,BeginInvoke参数中的最后一个参数,不知道写什么,所以,用的null
则需要写一个回调函数
private void TaskRunToEnd(IAsyncResult ar)
相关文章推荐
- C#学习之初步理解委托、事件、匿名方法和Lambda
- C#学习-C#中对DragDrop、DragEnter两个事件处理
- C#学习之初步理解委托、事件、匿名方法和Lambda
- CLR_Via_C#学习笔记之事件
- [C#]C#学习笔记-委托,事件
- C#学习笔记(事件)
- C# 事件学习
- C#学习基本概念之事件(三)---发布符合.NET Framework准则的事件
- C#学习基本概念之事件(五)---EventArgs
- C#学习笔记之三:C#接口与事件委托
- C#源码学习之---事件驱动异步文件操作
- C#学习笔记(三)—–C#高级特性中的委托与事件(下)
- 学习:C# 中的委托和事件(转)
- C#教学第9讲事件1(学习笔记)
- C#学习笔记——常量、字段以及事件
- C#中的委托、事件学习笔记
- C# 2.0学习之--事件2
- 学习 C#线程同步lock,Monitor,Mutex,同步事件和等待句柄(上) 并且给出源码的改进版
- C# 中的委托和事件学习总结
- C#事件学习