private void RunBackgroundThread(StatsFetchingService fetchingService) { this.cancellationTokenSource = new CancellationTokenSource(); this.backgroundThread = Task.Factory .StartNew( () => FetchFortniteStats(fetchingService, this.cancellationTokenSource.Token), this.cancellationTokenSource.Token ); }
private void FetchFortniteStats(StatsFetchingService fetchingService, CancellationToken cancellationToken) { while (true) { cancellationToken.ThrowIfCancellationRequested(); var stats = fetchingService.GetStats(); this.OnStatsUpdated(stats); } }
public void Start(StatsFetchingService fetchingService) { this.RunBackgroundThread(fetchingService); }