zoukankan      html  css  js  c++  java
  • Orleans----Grain(Grain Lifecycle)

    Orleans grains 使用可观察的生命周期进行有序激活和停用。这允许在grain 激活和收集期间以有序的方式启动和停止grain逻辑,系统组件和应用逻辑。

    Stages

    预定义的grain生命周期阶段如下。

    public static class GrainLifecycleStage
    {
        public const int First = int.MinValue;
        public const int SetupState = 1000;
        public const int Activate = 2000;
        public const int Last = int.MaxValue;
    }
    • First - grain生命周期的第一阶段
    • SetupState - 激活前设置grain状态。对于有状态的grain,这是从储存中装载的阶段。
    • Activate- 存储OnActivateAsyncOnDeactivateAsync被调用阶段
    • Last - grain生命周期的最后阶段

    虽然谷物生命周期将在谷物活化期间使用,但由于谷物在某些错误情况下(例如筒仓碰撞)并非总是停用,因此应用程序不应依赖谷物生命周期始终在谷物停用期间执行。

    粮食生命周期参与

    应用程序逻辑可以通过两种方式参与grain的生命周期:grain可以参与其生命周期,和/或组件可以通过grain激活上下文访问生命周期(请参阅IGrainActivationContext.ObservableLifecycle)。

    粒子总是参与其自己的生命周期,因此可以通过覆盖参与方法来引入应用程序逻辑。

  • 相关阅读:
    CodeForces 460B
    CodeForces 456A
    CodeForces462B
    HDU1394(线段树||树状数组)
    HDU1541(树状数组)
    HDU1556(树状数组)
    HDU5726(RMQ&&二分)
    POJ1182(并查集)
    HDU4496(并查集)
    HDU3038(并查集)
  • 原文地址:https://www.cnblogs.com/hzz521/p/11103528.html
Copyright © 2011-2022 走看看