并行磁盘写C#

Parallel disk writes C#

更新我完全知道这不会增加太多好处,磁盘将成为瓶颈(尽管我的磁盘可以执行 20k IOPS 的 32K 块)所以请在决定否决投票之前考虑这一点.

============

我需要将同一个文件写入磁盘 1 亿次。我有 2 个 CPU(每个 16 个线程,总共 32 个)。

我想使用所有线程并以异步方式执行此操作。代码非常简单。像这样:

for (int i = 1; i < 100000000; i++)
        {
            File.Copy(@"c:\sourcefile.txt", @"c:\distinationFile" + i + ".txt", true);
        }

使用 C# 执行此操作的最佳方法是什么?

不确定 "best",但您可以使用 TPL

ParallelLoopResult result = Parallel.For(0, 100000000, i => { 
   File.Copy(@"c:\sourcefile.txt", @"c:\destinationFile" + i + ".txt", true);
});