您的位置:首页 > 其它

zmq数据发布

2015-09-30 09:33 155 查看
现有一个利用zmq的数据发布API,传入发布数据时,加锁将数据放置到链表中,然后设置信号量。

另有一个线程一直循环,获取信号量,加锁链表,然后将数据发送出去。该种设计是否与zmq本身的设计理念不符合?

替换方案1:传入发布数据,然后查看链表是否为空;如果链表不为空,则尝试将链表中数据发送,成功则持续发送直到链表为空,然后将传入的数据发送。如果链表为空时则将数据放入链表末端。

if (list.empty())

send if failed then cache

else

{

for list

{

if (send success)

{

pop the sent one

}

else break;

}

list.push_back(the new msg);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  数据 发布 设计