コード例 #1
0
        private void ProcessMarketDataMessage(MarketDataMessage message)
        {
            var securityId = message.SecurityId;

            var subscribersCount = _subscribers
                                   .SafeAdd(message.DataType)
                                   .ChangeSubscribers(securityId, message.IsSubscribe);

            if (subscribersCount > 1)
            {
                var msg = new MarketDataMessage
                {
                    DataType    = message.DataType,
                    IsSubscribe = message.IsSubscribe,
                    SecurityId  = securityId,
                };

                message.CopyTo(msg);
                RaiseNewOutMessage(msg);
            }
            else
            {
                base.SendInMessage(message);
            }
        }