Exemple #1
0
        private void PrepareProcessPatterns()
        {
            if (NumberOfRunningRetos < NumberOfAllowedRetros && QueueList.Count > 0)
            {
                RetrospectiveQueueStructure item = null;
                lock (s_lockObject)
                {
                    if (NumberOfRunningRetos < NumberOfAllowedRetros && QueueList.Count > 0)
                    {
                        NumberOfRunningRetos++;
                        item = GetQueueHead();
                    }
                }

                if (item == null || item.Session == null)
                {
                    return;
                }

                item.Session.ProcessPatterns(item.UPByte, item.FHRByte);
                lock (s_lockObject)
                {
                    if (NumberOfRunningRetos > 0)
                    {
                        NumberOfRunningRetos--;
                    }

                    if (QueueList.Count <= 0)
                    {
                        Logger.WriteLogEntry(TraceEventType.Information, "Patterns Add On Manager, Retrospective Queue, Prepare Process Patterns", "Stopping QueueTimer");
                        QueueTimer.Stop();
                    }
                }
            }
        }
Exemple #2
0
        public void AddToQueue(PatternsSessionData session, byte[] upPByte, byte[] hrByte)
        {
            lock (s_lockObject)
            {
                var item = new RetrospectiveQueueStructure()
                {
                    FHRByte = hrByte,
                    UPByte  = upPByte,
                    Session = session
                };

                QueueList.Add(item);
                if (!QueueTimer.Enabled)
                {
                    QueueTimer.Start();
                    Logger.WriteLogEntry(TraceEventType.Information, "Patterns Add On Manager, RetrospectiveQueue, Add To Queue", "QueueTimer started");
                }

                Logger.WriteLogEntry(TraceEventType.Information, "Patterns Add On Manager, RetrospectiveQueue, Add To Queue", "AddToQueue finished");
            }
        }