首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >检查服务正在使用procrun运行

检查服务正在使用procrun运行
EN

Stack Overflow用户
提问于 2012-05-28 21:58:45
回答 1查看 666关注 0票数 2

我正在使用prunsrv创建windows服务。我想问您,是否可以查询进程的状态(如果正在运行、已停止),或者是否存在进程。另外,我想用Java程序读取pid文件的内容。

EN

回答 1

Stack Overflow用户

发布于 2012-05-28 22:13:51

是的,有一个技巧:在服务的启动代码中创建一个本地套接字。如果您在创建套接字时出错,您将知道该服务的一个实例已经在运行。

如果要检查服务是否处于活动状态,可以连接到套接字。如果失败了,那么这个过程就不存在了。

您可以通过这个套接字返回服务的PID,这样"monitor“程序就不需要知道日志路径和PID文件名了。如果你实现了start/stop方法,你甚至可以告诉监视器你的服务的状态。

这样做的最大好处是,当您的服务因任何原因终止时,操作系统将确保套接字关闭。第二个优点是它独立于操作系统工作--如果你需要把它移到Linux或Mac上,不需要修改代码。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10785866

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档