我一直在开发一个使用 ZMQ (2.2) 作为主要通信层的平台。本周早些时候,我决定接受 zeromq 网站上的建议并升级到最新的稳定版本 3.2.2
然而,在经历了更新到新 API 的痛苦之后,我非常失望地发现 clrzmq 绑定似乎存在问题,因为它无法在 Windows XP (SP3) 机器上加载 libzmq 库。我不断收到 SEHException 异常?!
我只是想知道那里是否有人遇到过同样的问题,是否有解决方法(甚至更好的修复方法)?
干杯:)
编辑 只是为了澄清一下,库加载得很好,我知道这一点,因为上下文的创建没有任何问题。在上下文中调用 CreateSocket 方法时会出现问题...请参阅下面的代码片段
ZmqContext context = ZmqContext.Create();
ZmqSocket socket = context.CreateSocket(SocketType.REQ);
按照 Jakob 的建议添加跟踪后,我得到以下输出
Assertion failed: Connection refused (..\..\..\src\signaler.cpp:310)
任何想法这意味着什么?
编辑 我还应该提到这个问题不会发生在所有的 XP 机器上,只有其中一些。我一直在试图弄清楚可以工作的机器和不工作的机器之间有什么区别。如果不知道这一点,升级并发布到生产环境中风险太大。