相关疑难解决方法(0)

Parallel.ForEach中的File.Copy

我正在尝试创建一个目录并在一个文件中复制一个文件(pdf)Parallel.ForEach.

下面是一个简单的例子:

    private static void CreateFolderAndCopyFile(int index)
    {
        const string sourcePdfPath = "c:\\testdata\\test.pdf";
        const string rootPath = "c:\\testdata";

        string folderDirName = string.Format("Data{0}", string.Format("{0:00000000}", index));

        string folderDirPath = rootPath + @"\" + folderDirName;

        Directory.CreateDirectory(folderDirPath);

        string desPdfPath = folderDirPath + @"\" + "test.pdf";

        File.Copy(sourcePdfPath, desPdfPath, true);

    }
Run Code Online (Sandbox Code Playgroud)

上述方法创建一个新文件夹并将pdf文件复制到新文件夹.它创建了这个目录树:

TESTDATA
  -Data00000000
      -test.pdf
  -Data00000001
      -test.pdf
....
  -Data0000000N
      -test.pdf
Run Code Online (Sandbox Code Playgroud)

我试着CreateFolderAndCopyFileParallel.ForEach循环中调用该方法.

    private static void Func<T>(IEnumerable<T> docs)
    {
        int index = 0;
        Parallel.ForEach(docs, doc =>
                                   {
                                       CreateFolderAndCopyFile(index);
                                       index++;
                                   });
    }
Run Code Online (Sandbox Code Playgroud)

当我运行此代码时,它完成以下错误: …

c# parallel-processing file-copying

8
推荐指数
2
解决办法
7238
查看次数

标签 统计

c# ×1

file-copying ×1

parallel-processing ×1