根据系统的硬盘确定 C# IO 操作的最大线程数的最佳方法是什么?
What is the best way to determine max amount of threads for C# IO operations based on the system's hard drive?
我有一个工具可以同时 运行 多个线程执行简单的 IO 操作。我的问题是;根据系统的硬盘驱动器功能,为 IO 操作确定最大可能线程数的最佳方法是什么?
我不认为 OS 真的 'knows' 你有什么样的 (HDD/SDD) 驱动力。
也许可以通过 WMI 了解 RAID 配置,但我不确定这是否可靠(一些 RAID 完全在硬件中实现)。
即使您知道您的驱动器,也可能有其他进程在使用它。
因此需要进行一些实验,并探索是否要在无法预先测量的多台计算机上执行此操作。
我有一个工具可以同时 运行 多个线程执行简单的 IO 操作。我的问题是;根据系统的硬盘驱动器功能,为 IO 操作确定最大可能线程数的最佳方法是什么?
我不认为 OS 真的 'knows' 你有什么样的 (HDD/SDD) 驱动力。
也许可以通过 WMI 了解 RAID 配置,但我不确定这是否可靠(一些 RAID 完全在硬件中实现)。
即使您知道您的驱动器,也可能有其他进程在使用它。
因此需要进行一些实验,并探索是否要在无法预先测量的多台计算机上执行此操作。