我正在尝试在Linux上开发一个管理器,该管理器监视某些进程。
例如,有一个配置文件,其中包含所有进程的名称:
processA
processB
processC
我需要监视这三个过程。
最简单的方法是循环它们,我们可以编写一个bash脚本:
read config file, read the names into a list
while true
for each proc in processList
ps aux | grep $proc
if [[ $? != 0 ]]
alert($proc exited!)
fi
done
done
好吧,显然它可以工作。但是,我认为这不是一种有效的方法。如果要监视的进程更多,则循环将花费更多时间。
所以我问是否有另一种方法可以做同样的事情,但是效率更高?我想我应该使用C / C ++来构建一个二进制文件,但是我不知道怎么做。