System.IO.File.Copy(sourceFilePath, destinationFilePath)
периодически выбрасывает IOExeception
.C# - File.Copy() кидает «Недостаточно системных ресурсов для завершения операции» исключение
Исключение говорит:
Exception Метательное: "System.IO.IOException" в mscorlib.dll.
Дополнительная информация: Недостаточно системных ресурсов для завершения запрошенной службы.
Я называю этот код на машину A. sourceFilePath
на машине В. destinationFilePath
на машине С
Этот вопрос не постоянно воспроизводимым.
Любые шаблоны, относящиеся к размеру копируемых файлов? Я имею в виду, что это происходит чаще в больших файлах? Также каков размер (в МБ) файлов, копируемых там, где он происходит? – Igor
Привет, Игорь. Исходя из того, что я наблюдал, я думаю, что частота появления проблемы определенно коррелирует с размером файла. Размер копируемых файлов, где возникает эта проблема, составляет 600 ~ 700 МБ. – Jimbo
'File.Copy' использует метод API окон для выполнения копии. Я не уверен, какова фактическая реализация на самом деле, но, возможно, она не выполняет копию в кусках. Я бы попытался изменить код и открыть 2 потока файлов (1 для чтения, 1 для записи), выполнить цикл и читать и писать в кусках, пока содержимое не будет скопировано. – Igor