OnixS C++ FIX Engine 4.14.0
Users' manual and API documentation
Loading...
Searching...
No Matches
Engine Initialization and Shutdown

Initializing the Engine

To initialize the Engine services, the OnixS::FIX::Engine::init method must be used. configFile parameter points to the Engine's configuration file. This method must be called before all other methods.

Shutting down the Engine

To shutdown the Engine, the OnixS::FIX::Engine::shutdown method must be used.

Note
No other members of any class from C++ FIX Engine, public API as well as instances by themselves, must be called after this method.

Shutting down the whole Application

Begin shutdown outside session callbacks and finish or discard deferred application work first; see Deferred Processing and Shutdown. Keep session listeners alive until their callbacks have finished.

The good practice is to shut down the whole application in the following order:

For a restart that continues existing sessions, follow Normal restart: continue the same session to preserve sequence numbers and storage files. Storage persistence and flush limitations are described in Write completion and replay.

The following example demonstrates the Engine's initialization and shutdown:

Example

using namespace OnixS::FIX;
try
{
// Initialization phase.
// Session-related logic goes here.
// Shutdown phase.
// Shut down all sessions.
Engine::instance()->unregisterListener();
// Shut down all reactors if they exist.
}
catch(const Exception& ex)
{
std::cout << "Exception: " << ex.what() << std::endl;
}