Quote from BlueOcean:
I notice that if you have an event handler such as...
int CMyStock::OnGotLevel2Record(GTLevel2 *pRcd)
you'll notice that this callback function will get called a TON! guessing like for a stock of 2 m shares daily volume it'll be called perhaps on average 15 times per second.
i would have OnGotLevel2Record() put the message onto an internal queue and then have multiple reader threads taking messages off that queue. basic producer/consumer pattern