/ / ZMQ-Hochwassermarke auf 3.x.x veraltet? - Scala, Zeromq, JZMQ

ZMQ High Water Mark auf 3.x.x veraltet? - Scala, Zeromq, JZMQ

Verwenden des JZMQ-Wrappers:

scala> import org.zeromq.ZMQ Importieren Sie 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

Dies scheint in der Version 3 zu propagieren:

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

Wer weiß warum? und was ist die Alternative, ein HWM mit jzqm + zmq3 zu setzen?

Antworten:

5 für die Antwort № 1

Schau dir an: http://zeromq.org/docs:3-1-upgrade

In zeromq 3.2 wurde HWM in Sende- und Empfangs-Hochwasserzeichen aufgeteilt: ZMQ_SNDHWM und ZMQ_RCVHWM.

Die Funktionen, die Sie in jzmq suchen, sind:

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

2 für die Antwort № 2

Die CZMQ-Bindung simuliert die alte HWM-Option und andere Bindungen können das gleiche tun.