private void TryLoop() { Debug.WriteLine("Loop started"); var loopObjects = new LoopObjects(); while (!_cancellationToken.IsCancellationRequested) { Manager.AcquireFrame(true); foreach (var capability in _enabledCapabilities) { _availableCapabilities[capability].Loop(loopObjects); } Manager.ReleaseFrame(); if (CyclePauseInMillis > 0) { Thread.Sleep(CyclePauseInMillis); } } }