private void _view_MainFormLoad(object sender, EventArgs e) { try { TaskScheduler scheduler = TaskScheduler.FromCurrentSynchronizationContext(); _processInfoService.LoadProcessesInfo(_ctoken) .ContinueWith(ant => { _view.AddGetNICLabel(_processInfoService.ProcessInfo); _loggerFactory.RunProgramLogged(); AddNewProcess(); _timeManager.Start(); }, CancellationToken.None, TaskContinuationOptions.None, scheduler); } catch (Exception ex) { _loggerFactory.ErrorLogged(ex); } }
private void _timeManager_Tick(object sender, EventArgs e) { try { if (_processInfoService.ProcessInfo != null) { _view.ProcessInfo = _processInfoService.ProcessInfo; } _processInfoService.LoadProcessesInfo(_ctoken); } catch (Exception ex) { _loggerFactory.ErrorLogged(ex); } }
private void _view_ProcessInfoControlClick(object sender, EventArgs e) { try { var isOpen = sender as bool?; var processDetails = _view.GetProcessDetails; if (isOpen == true) { _processInfoService = new ProcessInfoService(processDetails.ProcessName); TaskScheduler scheduler = TaskScheduler.FromCurrentSynchronizationContext(); _processInfoService.LoadProcessesInfo(_ctoken) .ContinueWith(ant => { _loggerFactory.UserOpenInfoLogged(processDetails); _timeManager.Tick += _timeManager_Tick; }, CancellationToken.None, TaskContinuationOptions.None, scheduler); } else { _loggerFactory.UserCloseInfoLogged(processDetails); _timeManager.Tick -= _timeManager_Tick; if (_processInfoService != null) { _processInfoService.Dispose(); } } } catch (Exception ex) { _loggerFactory.ErrorLogged(ex); } }