Многопоточное копирование больших файлов
Подскажите, каким способом лучше организовать программу для многопоточного копирования файлов большого размера? Не получается правильно объединить скопированные части из разных потоков.
Thread[] threads = new Thread[numThreads];
FileSize = new FileInfo(sourceFilePath).Length;
FileSplit(numThreads); //метод розбиває файл на частини по кількості потоків
for (int i = 0; i < numThreads; i++)
{
threads[i] = new Thread(() =>
CopyFile(sourceFilePath, numThreads, (i-1),FileSize));
threads[i].Start();
}
for (int i = 0; i < numThreads; i++)
{
threads[i].Join();
}
Источник: Stack Overflow на русском