Example #1
0
            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);
            }
Example #2
0
 /// <param name="__延迟阈值">毫秒</param>
 /// <param name="__耗时阈值">毫秒</param>
 public H任务队列(int __分组统计数量 = 1000, int __延迟阈值 = 3000, int __耗时阈值 = 100)
 {
     _监控 = new H队列性能监控(__分组统计数量, __延迟阈值, __耗时阈值);
 }