码迷,mamicode.com
首页 > 其他好文 > 详细

Orchard源码分析(5.3):EndRequest事件处理(DefaultOrchardHost.EndRequest方法)

时间:2016-03-26 14:06:05      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:

EndRequest事件处理的作用是处理完"处理引擎(ProcessingEngine)"中的任务(Task)。
 
        void IOrchardHost .EndRequest() {
            Logger.Debug( "EndRequest");
            EndRequest();
        }
  
         protected virtual void EndRequest() {
            // Synchronously process all pending tasks. It‘s safe to do this at this point
            // of the pipeline, as the request transaction has been closed, so creating a new
            // environment and transaction for these tasks will behave as expected.)
            while (_processingEngine.AreTasksPending()) {
                _processingEngine.ExecuteNextTask();
            }
        }
 
"操作引擎(Processing Engine)" 是一个任务容器,EndRequest中对添加到容器内的任务进行同步处理。关于"操作引擎"我们在适当的时候来分析。
 
相关类型:
Orchard.Environment.State.DefaultProcessingEngine: IProcessingEngine
Orchard.Environment.State.ShellStateCoordinator : IShellStateManagerEventHandler, IShellDescriptorManagerEventHandler
Orchard.Warmup.Services.WarmupScheduler : IWarmupScheduler, IWarmupEventHandler
Orchard.Recipes.Services.RecipeScheduler : IRecipeScheduler, IRecipeSchedulerEventHandler
Orchard.Indexing.Services.UpdateIndexScheduler : IUpdateIndexScheduler, IIndexNotifierHandler

Orchard源码分析(5.3):EndRequest事件处理(DefaultOrchardHost.EndRequest方法)

标签:

原文地址:http://www.cnblogs.com/lhxsoft/p/5322593.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!