Skip to content

zh_CN_Extension_LifeCycle

Shunhong Zhang edited this page Aug 6, 2018 · 2 revisions

拓展模块的生命周期

正常运行

创建实例->运行Main()->运行完毕->销毁

被要求中途停止

创建实例->运行Main()->被要求停止->停止成功->销毁 创建实例->运行Main()->被要求停止->停止失败->继续运行->运行完毕->销毁

做事儿

主方法

当你开发秋之盒拓展,并创建继承自AutumnBoxExtension的类时,会被要求实现抽象方法int Main()
你必须在该方法内完成该拓展模块要做的一切事情,当方法结束,秋之盒会视为该拓展模块运行完毕,并开始销毁

public override int Main(){
   //所有事情
    return 0;
}

被要求停止

在某些情况下,秋之盒或用户可能会要求停止拓展模块的运行,这时,秋之盒将调用拓展模块的虚方法bool OnStopCommand()

  • 当该方法返回true,则视为停止成功,该模块将被销毁
  • 如果返回false或抛出异常,则视为停止失败
    覆写此方法自定义停止逻辑
public override bool OnStopCommand(){
    //相关处理代码
    //停止成功返回true,不可停止或停止失败返回false
    return true;
}
Clone this wiki locally