我正在编写一个轻型远程应用程序来帮助调试远程通信问题。这个应用程序模仿了大型应用程序的功能:
定期发送心跳 另一个同行应用程序,和 定期验证心跳 已经收到一段时间了 阈值。
我们所看到的是在我们的大应用程序中,心跳似乎被放弃了。一个对等体将长时间没有看到来自另一个对等体的心跳,直到“死”的对等体重新启动。大应用程序以其他所有方式响应。我们认为它与网络设置有关。我们能够在本地重现问题,并通过对我们的测试环境进行一些配置更改来修复它。
为帮助我们的客户诊断问题,迷你遥控应用程序需要记录尽可能多的信息。
那么,有没有办法获得远程连接的底层套接字?我知道我可以为此编写一个自定义接收器,但我希望保持实际的远程处理过程尽可能接近大应用程序中的实现。
另外,任何想法为什么大应用可能会“放弃”心跳?
答案 0 :(得分:1)
我不知道直接的答案,但作为一种方法来达到它。你可以使用反射来查看套接字类,或从符号服务器获取类。如果这仍然无济于事,您可以随时将类复制/粘贴到您自己的命名空间中,这样您就可以暴露出需要公开的内容...只是一个想法。