Вопрос

У меня есть служба, которая управляет устройством RS-232 и записывает действия в файл.Я должен написать еще один сервис, который будет читать файл журнала построчно и выполнять несколько запросов к базе данных, а затем удалять все журналы.

Меня беспокоят конфликты чтения и записи в файл.Например, служба регистрации открывает файл, чтобы добавить новую строку, в то время как служба репликатора открывает файл и записывает «», поэтому усекайте его содержимое.

Есть предложения по разъяснению моей ситуации?

Это было полезно?

Решение

Как насчет изменения службы «чтения», чтобы сначала переименовать файл (я обычно делаю перед ним «_»).И затем он может удалить его, когда закончит.Служба записи должна создать файл журнала, если он не существует.Таким образом, вы должны иметь нулевую потерю данных.

Другие советы

Если вы не привязаны к использованию файла, вариант использования предполагает очередь сообщений для передачи сообщений журнала.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top