我有两个进程P1和P2。我想从P1 ping到P2告诉P2 它活着并且正在工作。我该怎么做?
答案 0 :(得分:0)
您可以在P1上定期连接P1的网络套接字侦听器。您需要为更具体的代码示例指定您正在使用的语言。
正如Thilo在下面提到的,由于它们位于同一系统上,因此您可以使用一个简单的文件作为“我活着”的消息。这是一个例子:
rm /tmp/P1.heartbeat date +%s > /tmp/P1.heartbeat
X=`cat /tmp/P1.heartbeat` NOW=`date +%s` DIFF=$(( $NOW - $X)) if [ $DIFF -gt 60 ] ; then echo P1 died $DIFF seconds ago. fi
答案 1 :(得分:0)
在同一台机器上(假设有一个文件系统),您可以使用“心跳文件”。让P1定期使用当前时间戳更新文件,P2可以检查是否过时。您也可以在那里写入P1进程ID,P2可以检查该pid是否仍然存在。