public void Start() { _cancellationTokenSource = new CancellationTokenSource(); Task.Factory.StartNew(() => { try { TaskEx.Delay(5000, _cancellationTokenSource.Token).GetAwaiter().GetResult(); if (_cancellationTokenSource.IsCancellationRequested) { return; } } catch (TaskCanceledException) { return; } _taskData = new CreatedNetworkTaskData { Id = Guid.NewGuid(), ComputerNumber = TaskHelper.GenerateComputerNumber(), Frequency = TaskHelper.GenerateValidR173Frequency(), FrequencyNumber = TaskHelper.GenerateValidR173NumpadValue() }; TaskCreated?.Invoke(this, new DataEventArgs <CreatedNetworkTaskData>(_taskData)); }); }
public void Stop() { _cancellationTokenSource.Cancel(); _taskData = null; }