An initializer function is used to ensure certain business logic to be successfully executed on a Docker instance only once. This topic describes the structure and features of C# initializer functions.
Init method
Function Compute provides the Init method to initialize your business logic. The Init
method is automatically called when the container starts in the background. The Init
method is called only once for each container.
The following shows the definition of the Init
method for Initializer function.
public void Init(); //No context objects are contained.
public void Init(IFcContext context); //The context object is contained.
public static void Init(); //No context objects are contained.
public static void Init(IFcContext context); //The context object is contained.
Function name
MyInitializer
must correspond to the initializer
field that you specify when you enable the initializer feature. For example, if you
set initializer
to fcdotnetsample::fcdotnetsample.TestHandler::MyInitializer
when you create a function, after the initializer feature is configured, Function
Compute loads the MyInitializer
function defined in the fcdotnetsample.TestHandler
file.
Features
- In
IFcContext
,FunctionInitializer
andInitializationTimeout
fields inFunctionParam
are designed specially for initializer functions. If these two fields are not specified, the initializer function will not be executed. - Initializer functions do not return any value. Return logic appended to initializer functions does not take effect.