c - 查询服务是否正在运行

标签 c linux service dnsmasq

如何在 C 中查询服务 (dnsmasq) 是否正在运行?

最佳答案

根据dnsmasq man page ,默认情况下它会将 pid 文件写入 /var/run/dnsmasq.pid。该文件将是一个文本文件,其中包含一个表示进程 ID 的整数。打开文件,读取整数,然后调用 kill(pid, 0) 以查看进程是否在该 pid 处处于事件状态。 (虽然不能保证检查 PID 是否存在就不会发现在该 PID 上运行的其他进程,但它通常已经足够好了。)

关于c - 查询服务是否正在运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3852681/

相关文章:

c - 是否在任何 stdlib header 中定义了 uint32、int32、uint64、int64 等类型?

Python pygodaddy 连接超时

c++ - 计算出多少客户端可以连接到我正在使用的某些tcp服务器代码

service - 在 WIX 安装上停止其他服务

c - 如何为变量赋值并在while循环中检查其值?

c - 用 C 实现 "more filter"

c++ - 新创建的暂停进程的 EIP 仅在 Windows XP 上失败 - kernel32.dll 镜像下的 EIP?

linux - debian:mysql-workbench 安装错误 [找不到-lpython2.7.a]

java.lang.IllegalStateException : No thread-bound request found: 错误

android - 如何在使用服务的Android 8.0(Oreo设备)上的后台应用程序中获取用户GPS位置?