Sequence of events when unregisterClient() is called before getting snapshot

Hello,

We are using RFA 8.2 C++ api's. We want to understand sequence of event when app calls registerClient and unregisterClient in very quick succession to get Level1 market data.

1. Is it guaranteed to receive snapshot in response to registerClient and then event stream close OR

2. Application will not receive snapshot at all and event stream close will be received


We see <2> happening with our application. Wanted to know what is guaranteed behavior.?


One more question, how do I know if event stream close is unsolicited or user requested?

Best Answer

  • Jirapongse
    Answer ✓

    @mktdata

    Because RFA is multiple threads so the application may receive either a completion event or a snapshot refresh message with a status that closes the stream, but not both.

    1724206765751.png


Answers

  • @mktdata

    Thank you for reaching out to us.

    Please check the section 6.4.1.5 Closing Event Streams in the RFA C++ developers guide.

    I hope that this information is of help.

  • @Jirapongse Our application registers for completion event and we see scenario <2> above happening. Section 6.4.1.5 do not speak anything about race condition between snapshot and unregisterClient. Can you clarify on that please?