Пример #1
0
        private async Task PerformMeasurement()
        {
            var sessionSamples = _model.Length * _config.SampleRate;

            for (var i = 0; i < SessionStarts.Count; ++i)
            {
                if (_model.Type == MeasurementType.ECG)
                {
                    var session = new Session(_iotDeviceService, _logger, _config.Samples)
                    {
                        SessionData   = EcgData.Take(sessionSamples).Skip(i * sessionSamples).ToList(),
                        Id            = i + 1,
                        MeasurementId = _model.Id,
                        Type          = MessageType.Ecg
                    };

                    await session.SendPackages();
                }

                var sleepTime = (SessionStarts.ElementAt(i + 1) - DateTime.UtcNow).Milliseconds;
                Thread.Sleep(sleepTime);
            }
        }