并行磁盘写入c#
本文关键字:磁盘 并行 | 更新日期: 2023-09-27 17:51:18
我完全意识到这不会增加多少好处,磁盘将成为瓶颈(尽管我的磁盘可以在32K块中实现20k IOPS),所以请在决定投票之前考虑一下这一点。
============
我需要将同一个文件写入磁盘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);
});