Exemplo n.º 1
0
 private Yield ProcessQueue()
 {
     if (SyncTicks.Enabled)
     {
         if (!tickSync.TryLock())
         {
             TryCompleteTick();
             return(Yield.NoWork.Repeat);
         }
         else
         {
             if (trace)
             {
                 log.Trace("Locked tickSync for " + symbol);
             }
         }
     }
     return(Yield.DidWork.Invoke(DequeueTick));
 }
Exemplo n.º 2
0
 public Yield Invoke()
 {
     LatencyManager.IncrementSymbolHandler();
     if (!tickSync.TryLock())
     {
         TryCompleteTick();
         return(Yield.NoWork.Repeat);
     }
     else
     {
         if (trace)
         {
             log.Trace("Locked tickSync for " + Symbol);
         }
     }
     if (!endOfTickData)
     {
         DequeueTick();
         return(Yield.NoWork.Repeat);
     }
     return(Yield.DidWork.Repeat);
 }