多文件并发多线程MD5工具(相对快速的MD5一批文件),适配自定义MD5 Hash I/O缓存。

自己写的多文件 MD5校验工具,一个文件开一个线程,有最大I/O 缓存设置,兼容读写MD5后缀文件。

共计91个文件,合计180G左右 12分钟左右,UI基本卡废,但程序没蹦,属于正常。

卡的原因是基本是用 I/O 峰值了,我的是机器硬盘(峰值估计单文件在100M/S 上面,),然而我的单文件MD5 HASH缓存设置到了50M,也就是91*50M,完全超过硬件本身的硬件实力。

我也没有锁瓶颈,在配置里面设置,各位量力而行,找到合适自己计算机硬件最大合理的尺寸,就自己调节适配吧。或者您有更好自动化适配硬件的算法可以分享一下。

cs 复制代码
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>
    <!--默认MD5缓存大小-->
    <add key="MD5CacheSize" value="1"/>
    <!--最大MD5缓存大小,注意过大可能会导致I/O占用过高-->
    <add key="MaxMD5CacheSize" value="100"/>
  </appSettings>  
</configuration>
相关推荐
VAllen1 小时前
ConcurrentNativeQueue<T>:一个使用 .NET 实现的零 GC 压力的无锁 MPSC 原生队列
c#·.net·性能测试·.net core·dotnet·csharp
用户298698530148 小时前
C#:三行代码,给 Word 文档的文本框“一键清空”
后端·c#·.net
唐青枫14 小时前
C#.NET Expression Tree 深入解析:表达式树、动态查询与运行时代码生成
c#·.net
程序设计实验室1 天前
C# 扩展方法只会写 this 吗?C# 14 新语法直接把扩展方法玩出了花
c#
唐青枫2 天前
C#.NET SignalR 深入解析:实时通信、Hub 与连接管理实战
c#·.net
唐宋元明清21882 天前
.NET Win32磁盘动态卷/跨区卷触发“函数不正确”问题排查
windows·c#·存储
hez20102 天前
Satori GC:同时做到高吞吐、低延时和低内存占用
c#·.net·.net core·gc·clr
唐青枫3 天前
C#.NET Channel 深入解析:高性能异步生产者消费者模型实战
c#·.net
小峥降临3 天前
Rokid UXR 的手势追踪虚拟中更真实的手实战开发【含 工程源码 和 最终完成APK】
c#
晨星shine7 天前
GC、Dispose、Unmanaged Resource 和 Managed Resource
后端·c#