public void 添加事项 <T>(T __数据, Action <T> __处理数据, H队列性能监控 __监控 = null) { //Debug.WriteLine("{0} 添加事项 {1}", DateTime.Now.ToString("HH:mm:ss.fff"), __数据); var __接收时间 = Environment.TickCount; _任务 = _任务.ContinueWith(q => { if (!_取消标志.IsCancellationRequested) { try { //Debug.WriteLine("{0} 执行事项 {1}", DateTime.Now.ToString("HH:mm:ss.fff"), __数据); if (__监控 == null) { __处理数据(__数据); } else { __监控.监控下执行(_名称, __数据, __接收时间, __处理数据); } } catch (Exception ex) { H调试.记录异常(ex, _名称); } } }, _取消标志.Token); }
/// <param name="__延迟阈值">毫秒</param> /// <param name="__耗时阈值">毫秒</param> public H任务队列(int __分组统计数量 = 1000, int __延迟阈值 = 3000, int __耗时阈值 = 100) { _监控 = new H队列性能监控(__分组统计数量, __延迟阈值, __耗时阈值); }