我正在从服务器读取
MessageTable msg = (MessageTable)Activator.GetObject(typeof(MessageTable), portFormat, WellKnownObjectMode.Singleton);
如果服务器正在运行,那么它会返回带有值和方法的 msg 对象。
它从不返回空消息,无论服务器是否正在运行,但是当服务器不可用时,调用它的方法会引发异常,然后如何检查服务器是否正在运行。
我正在从服务器读取
MessageTable msg = (MessageTable)Activator.GetObject(typeof(MessageTable), portFormat, WellKnownObjectMode.Singleton);
如果服务器正在运行,那么它会返回带有值和方法的 msg 对象。
它从不返回空消息,无论服务器是否正在运行,但是当服务器不可用时,调用它的方法会引发异常,然后如何检查服务器是否正在运行。
即使您找到允许您检查服务器是否响应的方法,如果服务器在您调用 IsOnline() 和调用您要调用的方法之间脱机怎么办?
我认为您应该在进行远程调用的任何地方处理此异常。
如果您仍然想找到一种方法来了解服务器是否在线,您可以在 MessageTable 类中添加一个不执行任何操作的 Ping() 方法。如果你发现一些有用的东西,你也可以在RemotingServices类中检查。也许使用 RealProxy...