1

我有一个带有 bool isAlive() 方法的 NetNamedPipeBinding,我想用它来检查 ServiceHost 是否还活着。

目前这看起来像这样:

 while (!stopThread)
        {
            Thread.Sleep(1000); 
            try{
              try
              {
                 pipeproxy.isAlive();
              }
              catch (CommunicationObjectFaultedException)
              {
                 pipeproxy = pipeFactory.CreateChannel();
              }
            }                
            catch (EndpointNotFoundException)
            {

               //Show notification
                  stopThread=true;
            }
            catch{}
        }
   //Close Application

令人惊讶的是,即使没有主机,我也可以创建一个频道,所以我不确定这是否是正确的方法。

提前致谢。

4

1 回答 1

3

CreateChannel 不连接到服务,这仅在您调用它时发生。

于 2013-07-24T19:21:08.323 回答