Я нашел этот вопрос в следующих двух ситуациях.Файл становится пустым во время операции записи js
- Когда на сервере имеется много свободного места.
- Если на сервере нет свободного места.
Я читаю конкретный файл в формате JSON, используя следующие:
fs.readFileSync(_file_path, 'utf-8');
и после некоторых манипуляций на полученных данных, я пишу обновленные данные в тот же файл, используя следующие:
fs.writeFileSync(_file_path, {stringified-json});
Во время этой операции мой файл когда-то становится пустым, теперь я пытаюсь воспроизвести эту проблему локально, но не могу ее воспроизвести.
Если он бросает, не должен ли он остановить весь процесс ...? –
Вы правы. Я отредактировал ответ, чтобы указать, что это будет только в том случае, если уже есть блок try/catch, и он проглатывает ошибку. Я также добавил вторую возможность (состояние гонки между работниками или несколькими процессами). Я думаю, что без дополнительной информации любой ответ будет в значительной степени угадывать работу. – Trott
Trott, я использую ошибку try catch, но есть вероятность второго шанса, но я уверен, что я не освобождаю файл, но я его проверю. Благодарю. – HDB