public override void Pause() { if (State != DownloadState.Downloading) { return; } //临时文件统一删除,由于无法获得文件大小,每次下载都是一次性的 Message.TempFilePath = ""; if (client != null) { client.CancelAsync(); client.Dispose(); client = null; } if (speedHelper != null) { speedHelper.Dispose(); speedHelper = null; } _prog_.AverageSpeed = _prog_.Speed = _prog_.CurrentValue = 0; DownloadProgressChanged(_prog_); State = DownloadState.Pause; }
private void DisposeSpeedHelper() { if (speedHelper == null) { return; } speedHelper.IsEnabled = false; speedHelper.Dispose(); speedHelper = null; }
public override void Dispose() { if (State == DownloadState.Disposed) { return; } DisposeThreads(); speedHelper.IsEnabled = false; speedHelper.Dispose(); speedHelper = null; StartDisposeTemporaryFile(); State = DownloadState.Disposed; }