LINUX.ORG.RU

С++, как узнать запущена ли программа?

 


0

1

Программа иногда запущена как демон, иногда в другом терминале, иногда в screen. Приходиться руками смотреть в top выполняется ли программа, убивать процесс и запускать заного (или отказаться от запуска).

Как в С++ проверить выполняется ли процесс на linux с именем name?


Ты хочешь написать программу, которая чекает, запущена ли другая программа?

Ну а вообще, гугл выдал вот такую ссылку.

Nibbler
()
Последнее исправление: Nibbler (всего исправлений: 1)

Пускай программа файл лочит. В /var/run/user/$(id -u)/ например. Или прямо в /tmp/ Это самый нормальный способ.

legolegs ★★★★★
()

можно попробовать организовать коммуникацию процессов через unix domain sockets. если connect не удался, то программа не запущена.

xionovermazes
()

Напиши сервис для systemd или что у тебя там. Там статус и смотри. Их для контроля демонов и придумали. Либо городи лок-файлы, если не осилил.

cocucka ★★★★☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.