コード例 #1
0
        public void Handle(T message)
        {
            TaskResult taskResult = InternalHandle(message);

            //处理成功 或 处理失败并且未设置重试的消息,回写TaskResult
            if (taskResult.Success || (!taskResult.Success && !message.Retried))
            {
                if (message.SetTaskResult)
                {
                    taskQueue.SetTaskResult(message, taskResult);
                }
            }
            else
            {
                message.Retry();
                log.InfoFormat("【{0}_{1}】 消息开始重试,消息Id:{2},当前RetryCount:{3}", taskQueue.TaskQueueType, taskQueue.TaskQueueIndex.ToString(), message.Id, message.RetryCount);
            }
        }