我有下面的C#代码:C#运行方法多的时间同时
string[] files = Directory.GetFiles(@"C:\Users\Documents\DailyData", "*.txt", SearchOption.AllDirectories);
for (int ii = 0; ii < files.Length; ii++)
{
perFile(files[ii]);
}
当每个文件打开每个文件,并创建了一系列通用的列表,然后将结果写入文件。
每次迭代大约需要15分钟。
我想要perFile
方法同时执行,例如在开始下一个迭代之前不等待当前迭代完成。
我的问题是:
我该怎么做?
我如何可以控制的perFile
许多实例同时运行
我怎样才能确定如何perFile
我的电脑的许多并发情况下,可以在同一时间
你正在寻找的是可能的,但你不会得到任何因为您的硬盘不能同时读取多个扇区,所以可以从中受益。如果你有ssd,你可能会从中受益。 –
@ M.kazem Akhgary:我们无法从问题中判断'perFile'方法是否是磁盘绑定的。 (显然有一定数量的磁盘I/O发生,但不可能知道这是否是瓶颈。) – LukeH