1

我的 Java 服务器使用 JZMQ 运行了一段时间。突然它得到了断言失败:检查()(msg.cpp:220)

它不能被 JAVA 捕获。而java进程本身就关闭了。这似乎是 JNI 中的 Cpp 问题

我可以知道是否有人知道这个例外会发生什么?

谢谢

4

1 回答 1

2

我在第一次 ZMQ 测试中看到了这一点。在我的情况下,异常是由一个线程关闭另一个线程打开的套接字引起的。当两个线程同时使用一个套接字时也会发生这种情况。

我打破了 ZMQ 在线程之间共享套接字的规则。

我建议检查一个线程是否正在使用或关闭另一个线程正在使用的套接字。

于 2014-08-17T13:29:22.093 回答