ZeOMQ java JZQ Pror提供了类似C++监视的文件描述符的方法
在zmq cpp代码中,轮询器还可以监视fd,见下文
mFd is created with eventfd as mFd(eventfd(0, 0))
zmq::pollitem_t poll[2] = {{mSocket, 0, ZMQ_POLLIN, 0},
{NULL, mFd, ZMQ_POLLIN, 0} }
while (!abort) {
zmq::poll(poll, 2, -1);
if (poll[0].revents & ZMQ_POLLIN) {
socket handling;
}
//event fd has activity
if (poll[1].revents & ZMQ_POLLIN) {
process other things
}
我们可以使用下面的代码将轮询器唤醒以执行其他操作作为信号,这在我们希望尽快唤醒轮询器以执行某些操作,并且socket上没有活动时非常有用。事件fd的工作原理类似于管道,一端写一些东西来触发轮询器上的读取事件,从而唤醒轮询器
int x = 1;
write(mFd, &x, sizeof(x));
那么javazmq有没有一种方法可以完成上述类似的事情呢?除了socket监控之外,我们还可以像上面的事件文件描述符那样做吗?有没有一个例子
共 (0) 个答案