Как убедиться, что файлы открытого кода в Visual Studio не повреждаются при внезапном завершении работы?

280
Accumulator

Часто, когда мой компьютер внезапно выключается / выходит из строя, и у меня открыта VS, 1 или 2 открытых файла в нем будут заполнены шестнадцатеричными нулями или мусором. Это проблема, потому что в настоящее время мой компьютер в настоящее время выходит из строя нечасто, и я пока не могу его починить, и мне все еще приходится работать над вещами в VS. Я не говорю о сбое компьютера во время сохранения, я просто имею в виду, что его открытие при внезапном отключении может привести к некоторому повреждению случайных открытых файлов. Есть ли способ, которым я могу предотвратить это? Может быть, что-то вроде атомарного сохранения Sublime Text или автоматического резервного копирования? (не могу найти вариант для этого в VS)

0

1 ответ на вопрос

0
Yorik

Не обращая внимания на то, может ли доступ для чтения уничтожать открытые файлы, возможно, проблема связана с кэшированием записи. Кэширование записи может сделать систему «бодрой», отложив фактическую запись на диск, но в случае перебоев с питанием и т. Д. Вы можете получить потерю данных.

Я думаю, что по умолчанию для Windows включено кэширование записи для внутренних жестких дисков. Вы можете попробовать отключить кэширование записи.

Какие еще последствия это вызовет? Accumulator 6 лет назад 0
Я, честно говоря, понятия не имею. Я полагаю, что кэширование записи можно рассматривать как спулер печати в гораздо меньших временных масштабах. Я подозреваю, что влияние на производительность не так велико, за исключением, возможно, выключения или больших операций записи. Я подозреваю, что все это зависит от конкретной реализации. В любом случае это легко переключаемые параметры, которые потенциально улучшают целостность данных, и вы, по крайней мере, устраните возможную точку отказа для устранения неполадок. Yorik 6 лет назад 0
Однако одно: не отключайте «очистку буфера кэша записи», так как это делает кэширование записи еще более ленивым и более опасным для данных. Он находится на той же странице свойств, что и кэширование записи, но это параметр, который изменяет поведение включенного кэширования записи. Yorik 6 лет назад 0

Похожие вопросы