ZMQ高水位标记在3.x.x上弃用?

时间:2013-08-08 14:14:38

标签: scala zeromq jzmq

使用jzmq包装器:

阶> import org.zeromq.ZMQ import org.zeromq.ZMQ

scala> val context = ZMQ.context(1)
context: org.zeromq.ZMQ.Context = org.zeromq.ZMQ$Context@56d58984

scala> val socket = context.socket(ZMQ.REP)
socket: org.zeromq.ZMQ.Socket = org.zeromq.ZMQ$Socket@2a5a0f9

scala> socket.getHWM()
res6: Long = -1

scala> socket.setHWM(200)

scala> socket.getHWM()
res8: Long = -1

这似乎在第3版中得到了解释:

https://github.com/zeromq/jzmq/blob/750f2eecaa4c71adf86c156fab5840a2f614d4ea/src/org/zeromq/ZMQ.java#L895-900

任何人都知道为什么?什么是使用jzqm + zmq3设置HWM的替代方法?

2 个答案:

答案 0 :(得分:5)

查看:http://zeromq.org/docs:3-1-upgrade

在zeromq 3.2中,HWM已分为发送和接收高水位线:ZMQ_SNDHWMZMQ_RCVHWM

您在jzmq中寻找的功能是:

long    getRcvHWM()
long    getSndHWM()
void    setRcvHWM(long rcvHWM)
void    setSndHWM(long sndHWM) 

答案 1 :(得分:2)

CZMQ绑定模拟旧的HWM选项,其他绑定也可以这样做。