private async Task DoUpdateProgressLoop() { while (!this.IsDisposed & copyWorker.IsBusy) { if (!isPaused) { progress.Tick(); } if (progress.BytesMoved > 0) { currentStatus.CurrentTransferRate = progress.Throughput; currentStatus.CurrentFileProgress = progress.Percent; } await Task.Delay(100); } }