我正在创建一个文件复制程序,将使用ROBOCOPY命令复制大量文件(~100,000),每个文件的大小约为50KB。
对于每个文件,我都会创建一个新进程,并按以下方式传递ROBOCOPY命令和参数:
using (Process p = new Process)
{
p.StartInfo.Arguments = string.Format("/C ROBOCOPY {0} {1} {2}",
sourceDir, destinationDir, fileName);
p.StartInfo.FileName = "CMD.EXE";
p.StartInfo.CreateNoWindow = true;
p.StartInfo.UseShellExecute = false;
p.Start();
p.WaitForExit();
}
我不想为每个文件创建一个进程,我正在寻找更好的方法,既要考虑性能,又要考虑设计。有人能建议一个更好的方法吗?