Я изменяю написанное мной приложение, чтобы предотвратить одновременное выполнение нескольких экземпляров.
Моей первой мыслью было (согласно Linux FHS ) просто сохранитьФайл PID в /var/run
.Таким образом, я могу проверить, существует ли PID-файл, и выйти с ошибкой, если он есть.
Теперь, если я хочу, чтобы мое приложение было переносимым, я должен учитывать, что /var/run
не существуетв каждой системе (например, Windows).
Какова лучшая практика в этом случае?
Примечание: Это не обязательно должен быть файл PID.0-байтовый файл «блокировки» тоже подойдет.Преимущество файла PID заключается также в предоставлении PID тому, кому потребуется расследовать проблемы.
Уточнение: Приложение представляет собой сценарий резервного копирования, который обычно выполняется четко определенным пользователем.