private void DisposeObjects() { timer?.Dispose(); timer = null; processorHost?.Stop(); processorHost = null; }
private async void ConsumeOperation(int operation) { switch (operation) { case 0: { DisposeObjects(); isRunning = false; _appLifetime.StopApplication(); break; } case 1: { if (timer == null && processorHost == null) { timer = new Timer(new TimerCallback(cache.GetEntityValues), null, 0, 10000); processorHost = new QueueProcessorHost(processorFactory, 100, 100); await processorHost.Run(); } break; } case 2: { DisposeObjects(); Console.WriteLine("Stopped."); break; } } }