public void FlushData() { var remainingBuffer = _buffer.Where(x => x != null).ToArray(); if (remainingBuffer.Length > 0) { OnBufferLimitReached?.Invoke(remainingBuffer); } Console.WriteLine(" Flushed the data with a buffer count of " + remainingBuffer.Count()); }
public void AddSignal(SignalsInfo signal) { if (_currentIndex >= bufferSize) { OnBufferLimitReached?.Invoke(_buffer); _buffer = new SignalsInfo[bufferSize]; _currentIndex = 0; } _buffer[_currentIndex++] = signal; }
public void AddSignal(SignalsInfo signal) { if (_currentIndex >= bufferSize) { System.Threading.Thread.Sleep(Program.BufferDelayForSending); OnBufferLimitReached?.Invoke(_buffer); _buffer = new SignalsInfo[bufferSize]; _currentIndex = 0; } _buffer[_currentIndex++] = signal; }