Exemplo n.º 1
0
        /// <summary>
        /// 新增异常处理器
        /// </summary>
        /// <param name="type"></param>
        /// <param name="handler"></param>
        public void AddExceptionHandler(Type type, IExceptionHanlder handler)
        {
            if (type == null || handler == null)
            {
                return;
            }

            if (exceptionHandlerContainer.ContainsKey(type))
            {
                exceptionHandlerContainer[type].Add(handler);
            }
            else
            {
                lock (tempLock_flag)
                {
                    exceptionHandlerContainer.Add(type, new List <IExceptionHanlder>()
                    {
                        handler
                    });
                }
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// 新增异常处理器
        /// </summary>
        /// <param name="type"></param>
        /// <param name="handler"></param>
        public void AddExceptionHandler <T>(IExceptionHanlder handler) where T : Exception
        {
            if (handler == null)
            {
                return;
            }

            var type = typeof(T);

            if (exceptionHandlerContainer.ContainsKey(type))
            {
                exceptionHandlerContainer[type].Add(handler);
            }
            else
            {
                lock (tempLock_flag)
                {
                    exceptionHandlerContainer.Add(type, new List <IExceptionHanlder>()
                    {
                        handler
                    });
                }
            }
        }