zoukankan      html  css  js  c++  java
  • Orchard源码分析(5.3):EndRequest事件处理(DefaultOrchardHost.EndRequest方法)

    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
  • 相关阅读:
    12迭代器
    11(2)Vector(向量)
    11(1) LinkList ---链表
    11集合(Collection<E>) Arraylist
    10异常
    乘法计算过程的模拟
    10 Date详解
    详细的OA系统学习
    8 math类
    Java开发中的23种设计模式详解
  • 原文地址:https://www.cnblogs.com/lhxsoft/p/5322593.html
Copyright © 2011-2022 走看看