Initializer 函数是实例的初始化函数,保证同一实例成功且仅成功执行一次。本文介绍了 C# Initializer 函数的结构和特点。

Init 方法

函数计算提供了 Init 方法的机制,用于执行初始化工作。该 Init 方法会自动在后台容器启动时被调用,每个容器只调用一次。

一个最简单的 Initializer 函数Init 方法定义如下所示。

public void Init();   //没有 context 对象
public void Init(IFcContext context); //包含 context 对象
public static void Init();   //没有 context 对象
public static void Init(IFcContext context); //包含 context 对象   

Initializer 函数名

MyInitializer 需要与添加初始化函数时的 initializer 字段相对应。例如创建函数时指定的 initializer 入口为 fcdotnetsample::fcdotnetsample.TestHandler::MyInitializer,那么函数计算在配置 初始化函数功能后会首先加载 fcdotnetsample.TestHandler 中定义的 MyInitializer 函数。

Initializer 特点

  • IFcContext 中的 FunctionParam 包含的 FunctionInitializerInitializationTimeout 信息是为 initializer 设计的。若不配置这两个参数,则初始化函数不执行。
  • 无返回值。在函数末尾增加返回操作是无效的。