监控流程启动的最佳方法

时间:2009-09-22 23:06:13

标签: c#

我有一个应用程序(A)与另一个我没有写过的应用程序(B)进行通信,它们是我订阅的API。当B关闭时,A会很好地通知此丢失的应用程序,并且所有丢失的信息都会丢失(因为该过程不再存在)。

我已经写了一个简单的threading.timer来基本上轮询这个应用程序恢复生命然后重新初始化自己(重新初始化为B)。

这一切都很好,花花公子,我想知道是否有更好的方法来做到这一点。

感谢。

1 个答案:

答案 0 :(得分:1)

我们所做的一件事是使用您要监控的服务的UDP消息传递。但是,我不确定您是否能够扩展服务B,但如果您这样做,则服务B可以发送UDP状态数据包,A可以注册接收这些UDP数据包。如果在一段时间后没有收到UDP数据包,您可以确定服务是否已关闭。这更像是一种推送模型,你所描述的更多是一种轮询模型。