diff --git a/src/Helpers/MasterHelper.cs b/src/Helpers/MasterHelper.cs index b6c109a..10dd71d 100644 --- a/src/Helpers/MasterHelper.cs +++ b/src/Helpers/MasterHelper.cs @@ -133,14 +133,15 @@ namespace iFileProxy.Helpers byte[] hash = []; if (File.Exists(fileName)) { + using FileStream fileStream = File.OpenRead(fileName); hash = algorithm switch { - FileHashAlgorithm.MD5 => MD5.HashData(File.ReadAllBytes(fileName)), - FileHashAlgorithm.SHA1 => SHA1.HashData(File.ReadAllBytes(fileName)), - FileHashAlgorithm.SHA256 => SHA256.HashData(File.ReadAllBytes(fileName)), - FileHashAlgorithm.SHA384 => SHA384.HashData(File.ReadAllBytes(fileName)), - FileHashAlgorithm.SHA512 => SHA512.HashData(File.ReadAllBytes(fileName)), - _ => MD5.HashData(File.ReadAllBytes(fileName)), + FileHashAlgorithm.MD5 => MD5.HashData(fileStream), + FileHashAlgorithm.SHA1 => SHA1.HashData(fileStream), + FileHashAlgorithm.SHA256 => SHA256.HashData(fileStream), + FileHashAlgorithm.SHA384 => SHA384.HashData(fileStream), + FileHashAlgorithm.SHA512 => SHA512.HashData(fileStream), + _ => MD5.HashData(fileStream), }; StringBuilder sBuilder = new StringBuilder(); for (int i = 0; i < hash.Length; i++) diff --git a/src/Services/TaskManager.cs b/src/Services/TaskManager.cs index 496fd3d..f1d6b05 100644 --- a/src/Services/TaskManager.cs +++ b/src/Services/TaskManager.cs @@ -268,7 +268,7 @@ namespace iFileProxy.Services } catch (Exception ex) { - _logger.Fatal($"执行下载任务时候出现致命问题: {ex.Message}"); + _logger.Fatal("task: {taskid} 执行下载任务时候出现致命问题: {ex}",taskInfo.TaskId, ex); taskInfo.Status= TaskState.Error; _dbGateService.UpdateTaskStatus(taskInfo);