小编ado*_*out的帖子

ZeroMQ非阻塞非排队推送

我正在使用ZeroMQ的C#包装器,但这似乎更像是ZeroMQ的潜在问题.

有没有办法在没有阻塞没有排队的情况下推送消息?如果服务器没有启动,我希望永久处理这些消息而不会阻塞.

以下是我到目前为止尝试过的设置:

1)

发送(阻止发送)

高水位线= 0

这(stragely)不会阻塞,但它似乎在内存中排队,直到套接字连接(内存不断上升为进程).

2)

发送(非阻止发送)

高水位= 1

这是竞争条件.如果我快速连续发送两条消息,有时会抛出一条消息,因为超过了高水位线.

3)

轮询套接字以确定它是否会阻塞.这并没有真正帮助,因为我仍然必须在开始阻塞之前将一条(旧)消息放入队列中(如果我设置HWM = 1).

具有任何高水位标记的非阻塞发送是不合需要的,因为一旦服务器重新联机,它就会从客户端获得一堆旧消息.

阻止发送不起作用,因为我不想阻止.

c# zeromq

2
推荐指数
1
解决办法
2297
查看次数

标签 统计

c# ×1

zeromq ×1