OnixS ICE iMpact Multicast Price Feed Handler C++ library  8.5.1
API documentation
Threading Model

An important issue that the users of OnixS C++ ICE iMpact Multicast Price Feed Handler library need to consider is the threading model that is used by the components of the application. The threading model of a library determines how the methods of the listeners are assigned to threads in order to be executed and synchronized.

Overview

The Handler processes market data coming from multicast feeds asynchronously. The Handler uses the internal pool of threads whose size depends on multiple factors. All threads are spawned as soon as market data processing is started and are being executed until market data processing is accomplished. The Handler spawns no additional threads while it's running.

Thread-specific for ErrorListener

The Handler may call OnixS::ICE::iMpact::MarketData::ErrorListener members simultaneously from different threads. Invocation of any member of OnixS::ICE::iMpact::MarketData::ErrorListener class is not synchronized by the Handler.

Thread-specific for FeedListener

The Handler may call OnixS::ICE::iMpact::MarketData::FeedListener members simultaneously from different threads. Invocation of any member of OnixS::ICE::iMpact::MarketData::FeedListener class is not synchronized by the Handler.

Thread-specific for HandlerStateChangeListener

The Handler can call OnixS::ICE::iMpact::MarketData::HandlerStateChangeListener members only from a single thread.

Thread-specific for OrderBookChangeListener

The Handler can call OnixS::ICE::iMpact::MarketData::OrderBookChangeListener members only from a single thread.

Thread-specific for OrderBookUpdateListener

The Handler can call OnixS::ICE::iMpact::MarketData::OrderBookUpdateListener members only from a single thread.

Thread-specific for OrderBookBundleUpdateListener

The Handler can call OnixS::ICE::iMpact::MarketData::OrderBookBundleUpdateListener members only from a single thread.

Thread-specific for ExchangeListener

The Handler can call OnixS::ICE::iMpact::MarketData::ExchangeListener members only from a single thread.